考虑下面的HTML:为什么CSS:不是伪类不能按预期工作?
<div class="a">
<div class="b">Hello</div>
</div>
<div class="c">
<div class="b">World</div>
</div>
添加红色下面的CSS颜色只有 “世界”,符合市场预期:
.c .b {
color: red;
}
但是,把下面的CSS代替colors both "Hello" and "World" in red:
:not(.a) .b {
color: red;
}
为什么?
使用' :not()'排除父元素是不可靠的 - 参见http://stackoverflow.com/questions/7084112/css-negation-pseudo-class-not-for-parent-ancestor-elements/7084147#7084147 – BoltClock 2013-05-07 19:59:32