首頁 >web前端 >css教學 >為什麼 jQuery 的 `:not()` 選擇器與 CSS 的 `:not()` 選擇器不同?

為什麼 jQuery 的 `:not()` 選擇器與 CSS 的 `:not()` 選擇器不同?

Linda Hamilton
Linda Hamilton原創
2024-12-21 15:37:13644瀏覽

Why Does jQuery's `:not()` Selector Differ from CSS's `:not()` Selector?

為什麼 jQuery :not() 選擇器在 CSS 中不起作用?

簡介

儘管 jQuery 聲稱符合 CSS3,但 :not()由於 jQuery 的擴展,選擇器在 jQuery 和 CSS 中的行為有所不同。

Key差異

  1. 逗號分隔列表: jQuery 允許在:not() 中使用複雜的選擇器列表,而標準:not() 只接受單一簡單選擇器。
  2. 複合選擇器: jQuery 允許在 :not() 中使用複合選擇器,但 CSS 需要連結多個:not() 子句。
  3. 組合器: jQuery 可以在 :not() 中使用後代組合器,這在 CSS 中是禁止的。

CSS 解決方法

要在CSS 中實現所需的行為,請使用多個連結的:not() 子句一起:

#sectors > div:not(.alpha):not(.beta):not(.gamma)

結論

CSS :not() 選擇器的有限功能會導致從jQuery 遷移到CSS時出現不一致和不便。然而,CSS 的進步表明未來的版本將與 jQuery 的擴展 :not() 行為更加一致。

以上是為什麼 jQuery 的 `:not()` 選擇器與 CSS 的 `:not()` 選擇器不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn