簡體   English   中英

如何在CSS中組合通配符而不是選擇器

[英]How to combine wildcard and not selectors in CSS

假設您的div處於以下三種可能狀態之一。

<div id="apple" />
<div id="apple" class="expanded" />
<div id="apple" class= "collapsed" />

僅當不存在expand和collapse類時,如何才能顯式地定位#apple div?

我想出的是#apple :not[id$="ed"]但它不起作用。 是否可以將這兩個選擇器組合在一起?

注意:在這種情況下,直接設置#apple的樣式還不夠。 僅當擴展和折疊類不存在時才必須明確選擇。 唯一需要支持的瀏覽器是當前版本的Chrome。

#apple:not(.expanded):not(.collapsed)

但是,具有多個id=apple元素無效。 從技術上講,您也可以這樣做: #apple:not([class~=expanded]):not([class~=collapsed]) 更籠統地說,也許#apple:not([class])

#apple:not(.expand):not(.collapsed)將起作用。

使用屬性選擇器[class]可以定位任何類。

由於您想使用:not所以您可以執行以下操作

#apple:not([class])僅在沒有任何類的情況下選擇#apple

工作示例:

 #apple:not([class]) { color: red; } 
 <div id="apple">no class</div> <div id="apple" class="expanded">expanded class</div> <div id="apple" class="collapsed">collapsed class</div> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM