2017-02-20 59 views
2

我有一些选择器的子元素,我想为除这个选择器以外的所有元素设置属性。我用这个代码::并非所有的子元素都使用css?

*:not(#element):not(#element *) { 
 
    font-size: 14px; 
 
}
<div id="element"> 
 
    <p>Something</p> 
 
</div> 
 
<p>font size is 14px</p>

但它不工作。

如果我使用*:not(#element)它的作品,但如果我使用*:not(#element *)它不。

+6

看到这个答案►[CSS \ *:没有(DIV P)不选择任何东西](http://stackoverflow.com/a/20774599/448144)它解释了只有简单的选择器在使用':not()'时可以工作,以及如何解决它。 – Nope

+0

谢谢你的回答 –

+0

即使':not(#element *)'是有效的,它仍然会被写为'*:not(#element),:not(#element *)'with a之间的逗号,以及2)它不会工作,因为div的父母,比方说身体,将被赋予字体大小,字体大小继承,所以你仍然会得到相同的大小,而不是它本来没有任何CSS。 –

回答

1

你可以简单地反你的选择并指定#element#element *有一些不同的字体:

* { 
 
    font-size: 14px; 
 
} 
 

 
#element, 
 
#element * { 
 
    font-size: 25px; 
 
}
<div id="element"> 
 
    <p>Something</p> 
 
</div> 
 
<p>font size is 14px</p>

相关问题