一、::before 和:before的區別
在CSS中,::before
和:before
是偽元素選擇器,用于在目標元素的前面插入內容。兩者的區別在于使用的單冒號(:
)和雙冒號(::
)。
在早期的CSS規范中,偽元素選擇器使用單冒號(:
)來表示,例如:before
和:after
。這樣做是為了避免與偽類選擇器混淆。偽類選擇器用于在元素的狀態上進行樣式設置,例如:hover、:active和:focus等。
然而,隨著CSS的發展,出現了新的偽元素選擇器,如::selection
和::backdrop
。為了與這些新的偽元素選擇器區分,CSS3規范更新了語法,要求使用雙冒號(::
)來表示偽元素選擇器。
::before
和:before
在語法上是等價的,兩者都可以用于創建元素的內容。但是在CSS3規范中,建議使用::before
,以避免與偽類選擇器混淆,并且更符合規范。