我无法理解原因,但检查chrome,似乎使用:not selector不使用标签。有谁理解原因?
这是一个示例代码: https://codepen.io/anon/pen/PQezVB
:not(a){
color:blue;
}
答案 0 :(得分:0)
找到一个解决方案,它应该像这样使用:
p {
color: initial;
}
:not(p) {
color: green;
}
答案 1 :(得分:0)
:not(selector)选择器匹配不是指定元素/选择器的每个元素。 :not()CSS伪类表示与选择器列表不匹配的元素。由于它阻止选择特定项,因此它被称为否定伪类。
因此,要使用它,您应该指定元素的css,然后使用not
来表示那些“不要”
*:not(a){
color:blue;
}
* {
color:black;
}

<p>Lorem Ipsum is simply dummy text of the printing and typesetting industry.</p>
<span>Lorem Ipsum is simply dummy text of the printing and typesetting industry.</span>
<i>Lorem Ipsum is simply dummy text of the printing and typesetting industry.</i>
<h1>Lorem Ipsum is simply dummy text of the printing and typesetting industry.</h1>
<a>This is the link "a tag"</a>
&#13;
答案 2 :(得分:0)
在此处找到解决方案:Is the CSS :not() selector supposed to work with distant descendants?
基本上,通过选择除元素之外的所有内容,您还可以选择其父元素,因此它也可以从继承中着色。
:not(a) { color: red; }
在这种情况下,几乎相当于:
* { color: red; } /* includes "body" element etc. */
a { color: inherit; }
答案 3 :(得分:-2)
将“href”属性添加到锚标记似乎可以解决此问题。
<p>Hello world</p>
<a href="">Some link</a>