匹配()选择器不起作用

时间:2016-01-26 15:30:48

标签: html css css-selectors

我正在对此进行测试,它应该在Chrome 47上运行(http://caniuse.com/#search=matches):



.results h4 {
  color: red
}
.results :matches(h4) {
  color: blue;
}
:matches(h2, h4) {
  font-size: 2em;
}

<div class="results">
  <h4>Hello</h4>
</div>
<h2>Hi</h2>
&#13;
&#13;
&#13;

你好应该是蓝色和大,但它是红色的!为什么呢?

1 个答案:

答案 0 :(得分:8)

您链接的功能是可通过JavaScript访问的DOM功能,而非CSS。您正在寻找的CSS伪选择器仍然位于前缀之后,目前称为:any

JSFiddle

:-moz-any(section, article, aside) h1 {
    color: red;
}
:-webkit-any(section, article, aside) h1 {
    color: red;
}
<section>
    <h1>Section: Hello World!</h1>
    <p>But I must explain to you how...</p>
</section>

:matches()存在,但仅作为未来的提案,但显然是Safari 9,但我现在无权访问OSX进行测试。