이전에 로그인 버튼 만들기를 하면서 ::before, ::after를 사용해서 만들어봤었습니다.
이걸 가상요소라고하는데 기존에 많이 사용했던 :hover같은 가상 클래스와는 다르다고해서 어떤 종류가 있는지 정리해봤습니다.
가상 클래스(Pseudo Classes)❓
- 하나의 콜론(:)을 사용하며, 별도의 class를 지정하지 않아도 요소를 선택할 수 있다.
즉, 가상 클래스는 선택하고자 하는 HTML 요소의 특별한 '상태(state)'를 명시할 때 사용한다.
Selector | Example | Example Description |
:active | a:active | Selects the active link |
:checked | input:checked | Selects every checked <input> element |
:disabled | input:disabled | Selects every disabled <input> element |
:empty | p:empty | Selects every <p> element that has no children |
:enabled | input:enabled | Selects every enabled <input> element |
:first-child | p:first-child | Selects every <p> elements that is the first child of its parent |
:first-of-type | p:first-of-type | Selects every <p> element that is the first <p> element of its parent |
:focus | input:focus | Selects the <input> element that has focus |
:hover | a:hover | Selects links on mouse over |
:in-range | input:in-range | Selects <input> elements with a value within a specified range |
:invalid | input:invalid | Selects all <input> elements with an invalid value |
:lang(language) | p:lang(it) | Selects every <p> element with a lang attribute value starting with "it" |
:last-child | p:last-child | Selects every <p> elements that is the last child of its parent |
:last-of-type | p:last-of-type | Selects every <p> element that is the last <p> element of its parent |
:link | a:link | Selects all unvisited links |
:not(selector) | :not(p) | Selects every element that is not a <p> element |
:nth-child(n) | p:nth-child(2) | Selects every <p> element that is the second child of its parent |
:nth-last-child(n) | p:nth-last-child(2) | Selects every <p> element that is the second child of its parent, counting from the last child |
:nth-last-of-type(n) | p:nth-last-of-type(2) | Selects every <p> element that is the second <p> element of its parent, counting from the last child |
:nth-of-type(n) | p:nth-of-type(2) | Selects every <p> element that is the second <p> element of its parent |
:only-of-type | p:only-of-type | Selects every <p> element that is the only <p> element of its parent |
:only-child | p:only-child | Selects every <p> element that is the only child of its parent |
:optional | input:optional | Selects <input> elements with no "required" attribute |
:out-of-range | input:out-of-range | Selects <input> elements with a value outside a specified range |
:read-only | input:read-only | Selects <input> elements with a "readonly" attribute specified |
:read-write | input:read-write | Selects <input> elements with no "readonly" attribute |
:required | input:required | Selects <input> elements with a "required" attribute specified |
:root | root | Selects the document's root element |
:target | #news:target | Selects the current active #news element (clicked on a URL containing that anchor name) |
:valid | input:valid | Selects all <input> elements with a valid value |
:visited | a:visited | Selects all visited links |
가상요소(Pseudo-Element)❓
- 가상 클래스와 달리 요소의 특정 부분에 스타일을 적용할 때 사용한다.
- 가상클래스처럼 selector에 추가되며, 존재하지 않는 요소를 존재하는 것처럼 부여하여 문서의 특정 부분 선택이 가능하다.
Selector | Example | Example Description |
::after | p::after | Insert content after every <p> element |
::before | p::before | Insert content before every <p> element |
::first-letter | p::first-letter | Selects the first letter of every <p> element |
::first-line | p::first-line | Selects the first line of every <p> element |
::selection | p::selection | Selects the portion of an element that is selected by a user |
자료 출처 : w3schools
반응형
'Frontend > HTML & CSS' 카테고리의 다른 글
[HTML] Forms (0) | 2022.04.04 |
---|---|
[HTML, CSS] img? background-image는 언제 써야할까 (0) | 2022.04.01 |
[CSS] White-space (0) | 2022.03.30 |
[HTML, CSS] 로그인 화면 만들기 + 가상요소 (0) | 2022.03.30 |
Grouping Content란? <div> 만 쓰는거 금지..! (0) | 2022.03.29 |