我如何组合两个:not()s?

时间:2016-06-19 19:44:45

标签: css css3 css-selectors

我正在尝试做这样的事情:

:not(h1) > a,
:not(figure) > a {
    background: #859900;
}

但它不起作用,因为figure>a捕获:not(h1)>ah1>a捕获:not(figure)>a。我该如何组合这些?

2 个答案:

答案 0 :(得分:8)

合并两个:not()选择器,就像.class-a.class-b .class-a.class-b的选择器一样。

:not(h1):not(figure) > a {
  color: red;
}
<h1><a>Test</a></h1>
<p><a>Test</a></p>
<figure>
  <a>Test</a>
</figure>

答案 1 :(得分:4)

使用此功能组合多个:not()选择器:

:not(h1):not(figure) > a {
    background: #859900;
}
<h1>
   <a href="http://stackexchange.com">Stack Exchange</a>
</h1>
<figure>
   <a href="http://stackexchange.com">Stack Exchange</a>
</figure>
<h2>
   <a href="http://stackexchange.com">Stack Exchange</a>
</h2>