CSS *选择器,如何排除:悬停

时间:2017-03-07 10:16:32

标签: javascript css

如何使用*从每个班级中排除:hover选择器?

或者我如何更改每个:hover以使其设置不同?

3 个答案:

答案 0 :(得分:1)

据我所知,您可以尝试两种方式:

首先想到的是使用setattr(entity, key, type(getattr(entity, key))(eval(value))) 选择器并创建一个rul,它将应用于没有悬停的每个元素:

:not()

但是,IE8或更低版本不支持*:not(:hover) { background-color: red; color: red; text-decoration:none; } 选择器,因此第二个选项是创建一个非样式类,并使用该类覆盖该元素的那些属性:

:not()

答案 1 :(得分:1)

你有没有尝试过:(:not)

示例:

*:not(:hover) { /* here */}
.container:hover img:not(:hover) {/* here */}

参考: https://developer.mozilla.org/en/docs/Web/CSS/:not

Tut: https://css-tricks.com/almanac/selectors/n/not/

我可以使用: http://caniuse.com/#feat=css-sel3

答案 2 :(得分:0)

这取决于您定义的specificity。所以这是正常行为。

p:hover*:hover更具体,因此如果您将鼠标悬停在<p>上,它将为绿色。

&#13;
&#13;
*:hover {
  background-color: orange;
}

p:hover {
  background-color: green;
}
&#13;
<p>Hello world</p>
&#13;
&#13;
&#13;