CSS `:not()` 是否選擇性地只針對直系子代和孫代?
:not() 選擇器是否擴及遠方後代?
在 CSS3 中,:not() 偽類提供了一種方法從選擇器中排除某些元素。然而,在處理遙遠的後代時,它的行為可能會令人困惑。
目前實作
根據官方文件和瀏覽器支援分析,:not() 選擇器僅適用於目標元素的直接子元素或孫元素。
考慮這一點例如:
此規則將為
的
但是,:not() 選擇者不會超出孫子元素。
問題
在此範例中,
;元素不是
在這種情況下,
元素匹配*:not(p) 條件,因為它是的後代,而其中的元素繼承紅色。
解
正確的行為是
元素保持其預設顏色。為了實現這一點,規則應該針對所有
。直接元素:
CSS 選擇器等級4 的未來增強
CSS 選擇器等級4 提案增強了:not() 選擇器以接受完整的複雜選擇器組合器。這意味著我們將能夠編寫以下選擇器:
此擴展語法將允許更精確地定位遙遠的後代。
以上是CSS `:not()` 是否選擇性地只針對直系子代和孫代?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

您是否曾經在項目上需要一個倒計時計時器?對於這樣的東西,可以自然訪問插件,但實際上更多

在元素個數不固定的情況下如何通過CSS選擇第一個指定類名的子元素在處理HTML結構時,常常會遇到元素個數不�...

關於Flex佈局中紫色斜線區域的疑問在使用Flex佈局時,你可能會遇到一些令人困惑的現象,比如在開發者工具(d...

格子呢是一塊圖案布,通常與蘇格蘭有關,尤其是他們時尚的蘇格蘭語。在Tartanify.com上,我們收集了5,000多個格子呢
