首页 >web前端 >css教程 >为什么 jQuery 的 `:not()` 选择器与 CSS 的 `:not()` 选择器不同?

为什么 jQuery 的 `:not()` 选择器与 CSS 的 `:not()` 选择器不同?

Linda Hamilton
Linda Hamilton原创
2024-12-21 15:37:13642浏览

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