강의 듣다가 헷갈려서 정리함
출처 : https://tailwindcss.com/docs/reusing-styles#extracting-classes-with-apply
▶ 부분적으로 세부사항을 지정하고 싶을 때 사용
▶ 출처의 예시처럼 tailwind가 class에서 길어지는 것을 class이름을 지정하고 나머지 style 효과를 안에 넣을 수 있음
▶ 아래의 코드처럼 div class="rounded-lg"로 지정하고 다른 css 파일에 @apply 코드 작성 시 div class="rounded-lg"가 우선적으로 적용됨
▶ 클릭과 같은 이벤트로 색상이나 div값을 숨기거나 드러낼 때 사용
▶ 형제 사이에서의 순서에 따라 요소를 선택
▶ 인덱스는 1부터 시작함
li:nth-child(2) { //목록의 두 번째 <li> 선택
color: red;
}
:nth-child(4n) { //임의의 그룹에서 네 번째 위치하는 모든 요소 선택
color: lime;
}
<template>
<div class="option-default bg-gray-100 p-2 rounded-lg mb-3 relative" :ref="optionChosen"
@click="onOptionClicked(choice, item)">
<div class="bg-blue-700 p-1 transform rotate-45 rounded-md h-10 w-10 text-white font-bold absolute right-0 top-0 shadow-md">
<p class="transform -rotate-45">+10</p>
</div>
<div class="rounded-lg font-bold flex p-2">
<div class="p-3 rounded-lg">{{ item }}</div>
<div class="flex items-center pl-6">{{ choice }}</div>
</div>
</div>
</template>
▶ div:nth-child(1) = class="bg-blue-700 ~"로 시작하는 div
▶ div:nth-child(2) = class="bg-blue-700 ~", class="rounded-lg ~"
▶ inline 속성(display: inline과 동일) = 아래의 ".option-default div:nth-child(2) div:nth-child(1)"에서 inline 지울 경우 div class="option-default"의 크기가 초기화면의 크기와 클릭했을 때 크기가 달라짐
(출처 : https://tailwindcss.com/docs/display)
.option-default {
@apply cursor-pointer;
}
.option-default div:nth-child(1) {
@apply hidden;
}
.option-default div:nth-child(2) div:nth-child(1) {
@apply inline bg-gray-400 text-gray-800;
}
.option-default div:nth-child(2) {
@apply bg-white text-gray-800;
}
출처 : https://www.daleseo.com/css-display-inline-block/