是否可以通过css3捕获缺少属性?

时间:2013-03-14 14:15:10

标签: css css3

我想知道我们是否可以捕获这两个不同的情况,避免javascript解析:

<div class="a b"></div>
<div class="a"></div>

div.a.b {
  color: red;
}

div.a { //Specify "when there is no class b"
  color: blue;
}

2 个答案:

答案 0 :(得分:3)

使用CSS3,您可以使用:not

div.a:not(.b) { ... }

使用CSS2并不是直接可行的,但您可以设置所需的属性,并使用div.a.b规则“取消设置”它们。你已经这样做了:你的div是红色的,但“当没有课程b时”它们是蓝色的。

答案 1 :(得分:2)

使用CSS3选择器:

div.a:not(.b){
  color: blue;
}

http://kilianvalkhof.com/2008/css-xhtml/the-css3-not-selector/