2015-01-07 24 views
0

這裏是代碼:可以css3'不'選擇器排除一些seletors?

HTML:

<div>1</div> 
<div>2</div> 
<div class="notme"> 
    <div>notme! 
     <div>notme!</div> 
    </div> 
</div> 

CSS:

div:not(.notme){ 
    background: #f00; 
} 
div:not(.notme *) { 
    background: #f00; 
} 

結果是 '格:不是(.notme *)' 不起作用。

所以問題是:css'not'選擇器可以排除div及其所有子節點嗎?還是還有其他更好的解決方案?

+0

不可靠的 - 爲什麼不設置默認'div'顏色,那麼'.notme'的顏色? – SW4

+0

它的工作原理。但問題在哪裏? –

+0

或者你爲什麼不使用:'div.notme div {}''div:不是(.notme *)'是什麼意思? – vaso123

回答

1

可以通過應用不同的樣式覆蓋應用到您的div元素的造型,以元素與類.notme

div { 
 
    background: #f00; 
 
} 
 

 
div.notme, 
 
div.notme div { 
 
    background: #fff; 
 
}
<div>1</div> 
 
<div>2</div> 
 
<div class="notme"> 
 
    <div>notme! 
 
     <div>notme!</div> 
 
    </div> 
 
</div>

+0

恐怕這個解決方案不適合我,請參閱上面的評論。 –

+0

@ HOT.CHO你可不可以添加一個類到你想要的樣式的div元素? –