css - CSS 选择器中是否允许使用括号?

标签 css css-selectors

在下面的示例中,我想创建一个 CSS 规则,该规则仅适用于带有文本“Blockhead”的 header 。

 <div class="gumby">
     <span class="pokey"></span>
     <h3>Blockhead</h3>
     <h3>Clay rules</h3>
 </div>

我可以使用括号吗,例如 (.gumby > .pokey) + h3?如果不是,我的替代方案是什么?

最佳答案

不,括号不是 CSS 选择器中的有效运算符。它们保留用于函数符号,例如 :lang():not():nth-child()

反正你不需要它们; .gumby > .pokey + h3 本身就可以正常工作。

这是因为总是读取一系列选择器和组合器 linearly .组合器没有任何优先级。选择器可以解释为

Select an h3 element
that immediately follows an element with class pokey
that is a child of an element with class gumby.

并且由于节点树的工作方式,此处使用同级和子级组合器意味着 .pokeyh3 都是 .gumby< 的子级,在你的例子中是,因为它声明他们都是 sibling 。

关于css - CSS 选择器中是否允许使用括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5478920/

相关文章:

html - 使用 CSS 伪选择器实现丝带形状

javascript - 在 Scroll 上移动 Div,然后停留在那里(水平粘条)

html - 不要设计整个 div

css - 不是 :first-child selector

css - 不要样式化伪类 :before/:after

html - 父圆形 div 内的圆形 div

css - 如何增加CSS中的链接区域

css - li :not(. classname):第一个子选择器没有选择

css - 浏览器是否必须使用 "render"(由于缺乏更好的术语)显示 :none property? 的 div

node.js - 如何通过 Selenium 根据 HTML 定位文本为 My Name 的元素