在 CSS 中组合 :not() 选择器

2024-04-21

我正在尝试选择全部tra 内的元素table,除了第三个和第四个。我设法通过使用以下方法来做到这一点:

#table tr:not(:nth-child(3)):not(:nth-child(4))

我想组合这些选择器,因为我还有更多:nth-child条目。像这样的东西,但它不起作用:

#table tr:not(:nth-child(3), :nth-child(4))

This does可以在 jQuery 中使用,但不能在 CSS 中使用。我正在使用 Chrome(我只需要它在那里工作)。

我无法找到适合这种情况的组合选择器。如何将选择器与:not?


选择器级别 3 不允许任何超过单个简单选择器 http://www.w3.org/TR/css3-selectors/#simple-selectors在一个:not()伪类。作为 jQuery 选择器,它之所以有效是因为 jQuery 扩展了它的:not()允许的功能任何选择器(像.not()方法)。

但是,您的第二种语法是建议的语法之一增强:not()在选择器 4 中 http://dev.w3.org/csswg/selectors4/#negation,并且与您的第一个等效。尽管该示例(无论如何在撰写本文时显示)显示了一系列:not()选择器,该提案说:

否定伪类 :not(X) 是一种以选择器列表作为参数的函数符号。它表示一个未由其参数表示的元素。

这里的选择器列表只是一个以逗号分隔的选择器列表。

如果您需要否定包含组合器的选择器(>, +, ~、空间等,例如div p),你不能使用:not()在 CSS 中;你必须使用 jQuery 解决方案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 CSS 中组合 :not() 选择器 的相关文章

随机推荐