通用選擇器(*)和偽元素(:before, :after)
通用選擇器(*)是否擴大了影響力偽元素,如:before 和:after?例如,當使用:
會自動影響偽元素還是需要明確聲明:
與直覺相反,通用選擇器不會直接影響偽元素(間接繼承除外)。這是因為 :before 和 :after 是與實際元素分開的實體,並由抽象表示。
像 * 這樣的簡單選擇器只能定位實際元素,而不是偽元素。要設定 :before 和 :after 的樣式,您必須將它們明確包含在選擇器中。
儘管僅使用 * 可能沒有遇到問題的原因可能是因為偽元素預設為內聯顯示,這不受影響通過框大小。
請記住,當使用多個簡單選擇器時,為了清晰起見,包括 * 是可選的。此外,雖然目前的選擇器規範使用雙冒號來表示偽元素,但較舊的瀏覽器支援使用單冒號表示法來重設框大小。
儘管 :before、:after 將樣式套用於所有元素的偽元素,在聲明 content 屬性之前它們不會產生。這不會造成任何效能問題。
以上是通用選擇器 (*) 是否會影響 :before 和 :after 等偽元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!