我可以做.one.two,并且该目标是任何具有“one”类和“2”类的元素吗?
如果我想要使用类“one”但不能与“two”结合的任何元素,该怎么办?例如.one!.two或类似的东西。
所有。
答案 0 :(得分:2)
答案 1 :(得分:2)
CSS3包括:not()
,但我认为它还不支持IE。适用于其他浏览器的最新版本:
.one:not(.two) {
//your styles
}
答案 2 :(得分:2)
.one {background: red;}
.two {background: green;}
.one.two {background: blue;}
我不明白为什么你需要'不',因为.one
的格式与.one but not .two
相同。如果您已经在使用多个课程,那么您应该很高兴。
答案 3 :(得分:0)
听起来你需要read about specificity。
.one
将选择所有class="one"
元素,.two
将选择所有class="two"
元素。
.one.two
会选择所有class="one two"
元素,并会覆盖可能为该元素设置.one
或.two
的所有规则。
.one:not(.two)
选择器会执行您想要的否定,但它不是跨浏览器兼容的。
添加像.one:not(.two)
这样的规则的最兼容浏览器的方法是添加覆盖:
.one
{
color: blue;
}
.one.two
{
color: black;
}