首頁 > web前端 > css教學 > 為什麼我的 CSS `:not()` 選擇器失敗,要如何修復?

為什麼我的 CSS `:not()` 選擇器失敗,要如何修復?

Patricia Arquette
發布: 2024-12-26 21:25:18
原創
470 人瀏覽過

Why Does My CSS `:not()` Selector Fail, and How Can I Fix It?

為什麼:not() 選擇器在CSS 中失敗

儘管jQuery 的:not() 選擇器聲稱符合CSS3,但它符合CSS3,但它符合與標準有很大不同CSS 中的:not() 選擇器。

jQuery擴充

雖然標準 :not() 只接受單一簡單選擇器作為參數,但 jQuery 允許任意選擇器,包括逗號分隔的選擇器清單。

CSS 限制

相較之下,標準 :not()有嚴格的限制限制:

  • 無法傳遞逗號分隔的選擇器
  • 無法將簡單選擇器組合成複合選擇器
  • 無法使用組合器(例如空格)

原因失敗

在給定的場景中,CSS 修改嘗試複製jQuery 的:not() 行為,由於以下原因,該行為不是有效的CSS:

  • 除以不允許使用逗號(例如:not(.alpha, .beta, .gamma))。
  • 傳遞複合詞選擇器(例如,body > div)在 :not() 中無效。

純CSS 解決方法

要在純CSS 中實現所需的結果,有必要連結多個:not() 選擇器:

#sectors > div:not(.alpha):not(.beta):not(.gamma)
登入後複製

但是,這種方法是比jQuery 的擴充:not() 語法更容易出錯且不一致。

未來發展

選擇器4 增強了:not() 以接受逗號分隔的列表複雜的選擇器,這將使其與jQuery 保持一致,並使其在未來更加通用。

以上是為什麼我的 CSS `:not()` 選擇器失敗,要如何修復?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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