2.8 KiB
선택자
타입 선택자
HTML 태그(요소)를 선택합니다.
p {
}
범용 선택자
모든 항목을 선택합니다.
* {
}
클래스 선택자
해당 클래스가 적용된 모든 항목을 선택합니다.
.my-class {
}
ID 선택자
해당 아이디가 적용된 항목을 선택합니다. HTML 문서에서 id는 유일해야 합니다.
#my-id {
}
속성 선택자
속성 이름 선택자
해당 속성이 있는 항목을 선택합니다.
a[title] {
}
속성 값과 일치
해당 속성의 값이 일치하는 항목을 선택합니다.
a[href="http://examples.com"] {
}
해당 속성의 값과 일치하거나 공백으로 구분된 목록 중 해당 값을 포함하는 항목을 선택합니다.
p[class~="highlight"] {
}
해당 속성의 값과 일치하거나 해당 값 뒤에 '-'으로 이어지는 항목을 선택합니다.
div[lang|="ko"] {
}
문자열 중 일부와 일치
해당 속성의 값이 주어진 값으로 시작하는 항목을 선택합니다.
div[class^="box-"] {
}
해당 속성의 값이 주어진 값으로 끝나는 항목을 선택합니다.
div[class$="box-"] {
}
해당 속성의 값이 주어진 값을 포함하는 항목을 선택합니다.
div[class*="box-"] {
}
의사 클래스 선택자
의사 클래스는 특정 상태에 있는 요소를 선택하는 선택자입니다.
-
:first-child
-
:first-of-type
-
:last-child
-
:last-of-type
-
:nth-child()
-
:nth-of-type()
-
:only-child
-
:only-of-type
-
:active
-
:hover
-
:visited
-
:link
-
:focus
-
:required
-
:valid
-
:invalid
-
:checked
-
:disabled
-
:enabled
-
:is()
-
:has()
-
:not()
의사 요소 선택자
의사 요소는 유사한 방식으로 동작하지만, 기존 요소에 클래스를 적용하는 것이 아니라 완전히 새로운 HTML 요소를 마크업에 추가한 것처럼 작동합니다.
- ::before
- ::after
- ::first-line
- ::first-letter
- ::selection
결합자
다른 결합자를 서로 연결하여 새로운 일치 조건을 만듭니다.
후손 결합자
첫 번째 선택자와 일치하는 요소의 자손 중에서 하위 선택자와 일치하는 요소를 선택합니다.
p .highlight {
}
자식 결합자
첫 번째 선택자와 일치하는 요소의 직접 자손 중에서 하위 선택자와 일치하는 요소를 선택합니다.
p > .highlight {
}
인접 형제 결합자
첫 번째 선택자와 일치하는 요소의 인접 형제 노드가 하위 선택자와 일치하는 요소를 선택합니다.
p + .highlight {
}
일반 형제 결합자
첫 번째 선택자와 일치하는 요소의 형제 중 하위 선택자와 일치하는 요소를 선택합니다.
p ~ .highlight {
}