2017-02-20 60 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>

相關問題