전체 방문자
오늘
어제
  • 전체 글
    • HTML
    • CSS
    • Javascript
    • React
    • Typescript
    • Next.js
    • Webpack
    • Vue.js
    • Git & GitHub
    • Error
    • Study
    • 개발 일지✨

블로그 메뉴

  • 💡
  • ⚙️
hELLO · Designed By 정상우.
하루

Home

가상 선택자
CSS

가상 선택자

2021. 12. 18. 22:42

가상 클래스 선택자

선택자 앞에 : 을 붙여서 선택한다.

사용자가 특정한 동작(이벤트)을 일으켰을 때 변화가 되는 선택자로는 hover, acitve, focus 가 있다.

(보통은 동작의 경우 JS로 수행하는데 특이한 케이스)

 

hover

  • E 에 마우스 포인터가 올라가있는 동안에만 E 선택
  • 마우스를 위에 가져다 두었을 때 해당 선택자에 작성된 CSS가 적용됨
  • E:hover

 

Active

  • E 를 마우스로 클릭하는 동안에만 E 선택
  • E:active

 

Focus

  • E 가 포커스 된 동안에만 E 선택
  • 대화형 콘텐츠에서 사용 가능 (input, img, tabindex)
  • E:focus
  • 예) 입력창이 포커스됐을 때 빨간색으로 테두리 지정
    • input 박스의 테두리의 경우 outline을 사용하는데 이는 다루기에 까다로우므로, outline: none 으로 지정하고 border를 사용한다.

input:focus

 

 

🚨 -child 해석 주의!
.fruits p:nth-child(1)
(X) class fruits의 후손 p 태그 중에 첫번째 요소를 선택해라
(O) class fruits의 후손 중에 첫번째 자식을 찾아라. 그 자식이 p 태그인지 확인하고 맞다면 선택해라
위처럼 코드를 오른쪽에서 왼쪽으로 해석하는 것이 명확하다.

 

first-child

  • E 가 형제 요소 중 첫번째 요소라면 선택
  • 같은 부모를 공유하는 요소들 중 첫번째 요소라면 선택한다.
  • E:first-child

 

last-child

  • E 가 형제 요소 중 마지막 요소라면 선택
  • E:last-child

 

nth-child

  • E 가 형제 요소 중 n번째 요소라면 선택 (n키워드 사용 시 0부터 해석)
  • E:nth-child(n)

짝수번째 요소들만 선택
3번째 요소부터 이후 요소들 선택

 

nth-of-type

  • E 의 타입(태그이름)과 동일한 타입인 형제요소 중 E 가 n번째 요소라면 선택 (n키워드 사용 시 0부터 해석)
  • E:nth-of-type(n)

태그이름을 찾는 선택자이기 때문에 클래스를 통해서 찾을 수 없다.

 

not

  • 부정 선택자
  • S 가 아닌 E 선택
  • S 를 제외한 선택자 E 를 찾겠다는 의미
  • E:not(S)

list의 딸기를 제외한 모든 글자색을 빨간색으로 지정

 

 

가상 요소 선택자

선택자 앞에 :: 를 붙여서 선택한다.

🚨 주의! 가상 요소 선택자를 작성할 때 content가 들어있지 않으면 CSS 스타일링이 작성되지 않는다. 내용을 적지 않더라도 필수 요소! content="";

 

before

  • E 요소 내부의 앞에, 내용(content)을 삽입
  • 요소 내부 컨텐츠의 앞, 머리글 정도로 이해하면 비슷
  • E::before

 

after

  • E 요소 내부의 뒤에, 내용(content)을 삽입
  • E::after

 

 

    'CSS' 카테고리의 다른 글
    • 단위
    • 우선순위
    • 속성 선택자
    • 복합 선택자

    티스토리툴바