[CSS] 가상 클래스 선택자

2024. 12. 10. 12:12·기초 학습/CSS

가상 클래스란?

가상 클래스는 접두사 콜론 :을 사용하며, 선택자의 끝에 붙여 상태를 특정하는 키워드이다.

가상 클래스 종류

1) :hover

:hover 가상 클래스 선택자는 요소에 마우스를 올려 놓은 동안 해당 요소를 선택하는 선택자이다.

요소에 마우스를 올려놓은 상태를 호버(hover)상태라고 한다.

ex)

button:hover {
    color: orange;
}

2) :active

:active 가상 클래스 선택자는 요소에 마우스를 갖다대고 누르는 순간부터 떼는 시점까지 해당 요소를 선택한다.

ex)

button:active {
    background: black;

3) :focus

:focus 가상 클래스는 요소가 포커스되었을 동안 해당 요소를 선택한다.

  • 텍스트 입력 필드가 활성화된 경우에 사용

'포커스(focus)'란 요소가 키보드 입력이나 상호작용을 받을 준비가 된 상태를 말한다.

input:focus { /* 요소가 포커스되었을 동안 해당 요소를 선택됨 */
    background-color: yellow;
}

4) :checked

:checked 가상 클래스 선택자는 라디오 버튼(<input type="radio">)과 체크박스(<input type="checkbox">)가 체크된 상태일 때 해당 요소를 선택한다.

/* 체크된 input 요소를 선택 */
input:checked {
    border: none;
    outline: 3px solid red;
}

/* 체크된 input 요소를 선택해서
   바로 뒤에 있는 label 요소에 스타일을 지정 */
input:checked + label {
    background-color: yellowgreen;
    color: white;
}

5) :first-child

:first-child 가상 클래스 선택자는 부모 요소의 자식 요소 중에서 제일 첫 번째에 위치하는 요소를 선택한다.

  • :first-child 가상 클래스 선택자는 :nth-child(1)과 동일하다.

6) :last-child

:last-child 가상 클래스 선택자는 부모 요소의 자식 요소 중에서 마지막에 위치하는 요소를 선택한다.

  • :last-child 가상 클래스 선택자는 :nth-last-child(1)과 동일하다.

7) :nth-child(n)

:nth-child(n) 가상 클래스 선택자는 부모 요소의 자식 요소 중에서 인덱스를 기준으로 n 번째에 위치하는 요소들을 선택한다.

 

매개변수 n에는 아래와 같은 값들이 들어갈 수 있다.

1. 음이 아닌 정수 인덱스 값
2. 키워드 값(odd 또는 even)
3. An+B 형태의 사용자 지정 패턴 (A: 증감 단계, B: 오프셋, n: 0부터 시작하는 모든 양의 정수)

ex)

li:nth-child(2) { /* 음이 아닌 정수 가능 */
    border: 3px solid blue;
}
li:nth-child(odd) { /* odd(홀수 번째) 또는 even(짝수 번째) 키워드 적용 가능 */
    background-color: yellowgreen;
}
li:nth-child(4n) { /* 사용자 지정 패턴(An+B의 형태) 가능 */
    color: red;
}

'기초 학습 > CSS' 카테고리의 다른 글

[CSS] CSS 테두리(border)와 크기(width/height)  (0) 2024.12.10
[CSS] CSS의 우선순위  (1) 2024.12.10
[CSS] 선택자  (1) 2024.12.09
[CSS] 텍스트 속성 (text-align, font-weight)  (0) 2024.12.05
[CSS] 텍스트 색 및 배경색 변경하기 (color, background-color)  (0) 2024.12.04
'기초 학습/CSS' 카테고리의 다른 글
  • [CSS] CSS 테두리(border)와 크기(width/height)
  • [CSS] CSS의 우선순위
  • [CSS] 선택자
  • [CSS] 텍스트 속성 (text-align, font-weight)
뜐🐸
뜐🐸
패왕색 패기를 갖춘 뜐입니다~
  • 뜐🐸
    뜐의 개발 로그
    뜐🐸
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 기초 학습
        • HTML
        • CSS
        • JavaScript
        • Version Co..
        • 미니 프로젝트
        • DOM & 웹 AP..
      • CSS 프레임워크
        • Bootstrap
      • React
        • 개념 정리
        • 기초 정리
      • 알고리즘
        • Week 1: 입출..
        • 재귀
        • 백트래킹
      • javascript
      • FastAPI
        • 크롤링 서버 만들기
      • 전역 상태 관리
        • Redux
      • 한 입 리액트 챌린..
      • 영어
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 글쓰기
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    :nth-child(n)
    :active
    가상 선택자
    inline-block
    :focus
    자바스크립트 #하노이 탑 #재귀 #백준 # 11729
    백준 #코딩테스트 #1074번 #재귀 #알고리즘 # 알고리즘 문제풀이
    오블완
    :hover
    티스토리챌린지
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
뜐🐸
[CSS] 가상 클래스 선택자
상단으로

티스토리툴바