CSS中的伪类和伪元素都是用来选择文档中某些特定部分的语法。
伪类(pseudo-class)是用于在某些特定状态下选择元素的关键词,例如:hover
、:active
和:focus
。伪类所选择的元素是已经存在于文档中的元素,只是在某些特定的状态下发生了改变。
伪元素(pseudo-element)则是用于创建一些不存在于文档树中的虚拟元素,并对其进行样式设置。例如,使用::before
和::after
可以在元素的前面或后面创建一个虚拟元素。伪元素所选择的元素是不存在于文档树中的虚拟元素,需要通过CSS来创建。
总结一下,伪类是用于选择已经存在于文档中的元素的不同状态,而伪元素则是用于创建并选择文档中不存在的虚拟元素。
需要注意的是,在CSS3中,伪元素使用::
而不是:
来表示,例如::before
和::after
。而在CSS2.1中,伪元素使用的是单个冒号:
。