首頁 > web前端 > css教學 > CSS `:not()` 是否選擇性地僅針對直接後代?

CSS `:not()` 是否選擇性地僅針對直接後代?

Patricia Arquette
發布: 2024-12-03 05:26:10
原創
792 人瀏覽過

Does CSS `:not()` Selectively Target Only Immediate Descendants?

CSS :not() 選擇器是為遠方後代設計的嗎?

CSS3 :not() 偽類,如中所述官方文件位於http://www.w3.org/TR/css3-selectors/#negation,旨在匹配以下元素:與給定的選擇器不匹配。然而,使用者發現它在與遠親後代一起使用時功能有限。

考慮以下範例:

div :not(p) { color: red; }
登入後複製

雖然此選擇器在

時起作用。是

的直接子級,當

> 時它會失敗。是更遠的後裔。此行為是有意為之,因為 :not() 只否定目標元素的直接後代。

的情況下包含一個

,它是

本身符合 *:not(p) 並繼承樣式。

元素本身仍然算是否定,從其父元素繼承文字顏色。

要克服此限制,將

定位為建議直接使用元素:

p { color: black; }
登入後複製

選擇器等級4 建議增強:not() 以接受包含組合器的完整複雜選擇器,從而允許更具體的後代定位。不過,此功能仍處於實施階段。

以上是CSS `:not()` 是否選擇性地僅針對直接後代?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板