프로젝트에서 tailwind를 사용하기 위하여 학습을 미리 해보자!!
구현하며 사용하며 학습도 되겟지만 미리 학습하여 쉽게가보장
hover:bg-dark-100
focus:bg-dark-300
active:bg-dark-300
이런식으로 사용함.
HTML의 required, pattern, type 등이 충족되지 않을 때 (유효성 검사 실패 시) 스타일이 적용된다.
invalid:border-pink-500 invalid:text-pink-600has
상태나 내용을 기반으로 요소의 스타일을 지정할 수 있다.
has-checked:bg-indigo-50 has-checked:text-indigo-900
<div class="group ...">
<img src="..." />
<h4>Spencer Sharp</h4>
<svg class="hidden group-has-[a]:block ..."><!-- ... --></svg>
<p>Product Designer at <a href="...">planeteria.tech</a></p>
</div>
부모요소 안에 a태그가 있으면 svg파일을 보여줘라 라는 코드이다. 조건부 렌더링 없이 CSS로만 상태를 표현하고 싶을 때 사용된다.
<div>
<label class="peer ...">
<input type="checkbox" name="todo[1]" checked />
Create a to do list
</label>
<svg class="peer-has-checked:hidden ..."><!-- ... --></svg>
</div>
형제 요소의 자손을 기준으로 요소의 스타일을 지정해야 하는 경우, 형제 요소를 peer클래스로 표시하고 변형을 사용하여 peer-has-*대상 요소의 스타일을 지정할 수 있다. 여기서는 형제 요소인 input의 checked일 경우svg파일을 숨기도록함.
<a href="#" class="group ...">
<div>
<svg class="stroke-sky-500 group-hover:stroke-white ..." fill="none" viewBox="0 0 24 24">
<!-- ... -->
</svg>
<h3 class="text-gray-900 group-hover:text-white ...">New project</h3>
</div>
<p class="text-gray-500 group-hover:text-white ...">Create a new project from a variety of starting templates.</p>
</a>
부모 요소인 a가 hover되면 group-hover를 가진 요소의 상태를 hover시 변경하게함.