目录

::before 和:before有什么区别

::before 和:before的区别是:早期的CSS规范中,为了避免与伪类选择器混,伪元素选择器使用单冒号(:)来表示。后来出现了新的伪元素选择器,为了与新的伪元素选择器区分,CSS3规范要求使用双冒号(::)来表示伪元素选择器。

一、::before 和:before的区别

在CSS中,::before:before是伪元素选择器,用于在目标元素的前面插入内容。两者的区别在于使用的单冒号(:)和双冒号(::)。

在早期的CSS规范中,伪元素选择器使用单冒号(:)来表示,例如:before:after。这样做是为了避免与伪类选择器混淆。伪类选择器用于在元素的状态上进行样式设置,例如:hover、:active和:focus等。

然而,随着CSS的发展,出现了新的伪元素选择器,如::selection::backdrop。为了与这些新的伪元素选择器区分,CSS3规范更新了语法,要求使用双冒号(::)来表示伪元素选择器。

::before:before在语法上是等价的,两者都可以用于创建元素的内容。但是在CSS3规范中,建议使用::before,以避免与伪类选择器混淆,并且更符合规范。