CSS에는 가상 요소(:pseudo-element)와 가상 클래스(:pseudo-class)가 있다. 이것들을 사용하여 HTML 문서의 수정 없이 CSS만으로 디자인적 요소를 추가할 수 있어 HTML문서에 쓸데없는 태그를 사용하여 가독성을 낮추는 것을 방지한다.
선택자 : 가상클래스 { property : value ; }
ex) a:hover { color : red; }
가상 클래스는 선택자 끝에 붙여 상태를 특정하는 키워드이다.
가상 클래스의 장점 중 하나는 오직 CSS를 주기 위해 클래스를 추가할 필요가 없다는 것이다.
ol li:first-child {
border-top: none;
}
ol li:last-child {
border-top: none;
}
ol li:nth-child(2) {
border-top: none;
}
가상 클래스가 실제로 존재하는 요소에 클래스 추가 없이 디자인을 입히기 위한 것이라면, 가상 요소는 아예 실제로 존재하지 않는 요소를 만들게 해준다.
선택자::가상요소 {property : value; }