티스토리 뷰
Pseudo Element
- 일반적으로 CSS 선택자로는 지정할 수 없는 미세한 영역을 선택하기 위해 사용됨
ex) ::before, ::after, ::first-letter, ::first-line, ::selection, ::marker, ::backdrop 등
::before / ::after
- 선택된 요소 앞 or 뒤에 content가 삽입됨 (콘텐츠를 비우려면 content: ""으로 설정)
- content에는 특수 기호가 주로 삽입됨 (스타일 목적이라 복사가 안됨)
- ::before와 ::after로 생성한 의사 요소는 원본 요소의 서식 박스에 포함되므로, <img>나 <br> 등 대체 요소에 적용할 수 없음 (= 닫을 수 없는 요소에는 넣을 수 없음)
- postion으로 적용하는 것은 비포로 만듦 (우선순위가 낮아서 왜지?)
div::before {
content: "+";
}
예시
<span class="ribbon">마지막의 주황색 상자를 바라보세요.</span>
.ribbon {
background-color: #5bc8f7;
}
.ribbon::after {
content: "멋진 주황색 상자입니다.";
background-color: #ffba10;
border-color: black;
border-style: dotted;
}

+
가상요소는 한 요소당 2개씩 붙이니까 더 만들고 싶으면 그 요소 자식들한테 가상요소 넣으면 됨
[출처] https://www.daleseo.com/css-before-after/
[CSS] ::before / ::after
Engineering Blog by Dale Seo
www.daleseo.com
https://developer.mozilla.org/ko/docs/Web/CSS/Pseudo-elements
의사 요소 - CSS: Cascading Style Sheets | MDN
CSS 의사 요소(가상 요소)는 선택자에 추가하는 키워드로, 선택한 요소의 일부분에만 스타일을 입힐 수 있습니다. 예를 들어 ::first-line을 사용하면 문단 첫 줄의 글씨체만 바꿀 수 있습니다.
developer.mozilla.org
https://developer.mozilla.org/ko/docs/Web/CSS/::after
::after (:after) - CSS: Cascading Style Sheets | MDN
CSS에서, ::after 는 선택한 요소의 맨 마지막 자식으로 의사 요소를 하나 생성합니다. 보통 content 속성과 함께 짝지어, 요소에 장식용 콘텐츠를 추가할 때 사용합니다. 기본값은 인라인입니다.
developer.mozilla.org
'CSS' 카테고리의 다른 글
| [CSS] transform (0) | 2024.07.25 |
|---|---|
| [CSS] transition (1) | 2024.07.22 |
| [CSS] Display (0) | 2024.07.22 |
| [CSS] Flexbox (0) | 2024.07.22 |
| [CSS] Grid (0) | 2024.07.19 |