簡體   English   中英

如何從CSS繼承中排除標簽(:not不起作用)

[英]How to exclude a tag from css inheritance (:not is not working)

我有一個要從CSS的一般繼承中排除的對象。 我在CSS上添加了“:not”,但它仍將子級的繼承傳遞給了它。 另外,我添加了新的ID和新的類,但仍然沒有遵循它們。

HTML代碼<a id="epLogin" href="#" class="pLogin" > GET ON TOP! </a> <a id="epLogin" href="#" class="pLogin" > GET ON TOP! </a>

CSS格式

a:hover,
a:active,
a:focus,
#Mainbody div.tags a:hover,
#Mainbody a:not(#epLogin) { 
    color: #3498db; 
}

#epLogin {
margin-top: 0px;
background: #00B5F7;
color: #fff;
font-weight: bold;
right: 20px;
height: 38px;
padding: 0 18px;
position: absolute;
top: 10px;
line-height: 39px;
}

除了將元素的屬性設置為特定值之外,您不能阻止元素從其父元素繼承屬性。

您可以從選擇器中排除一個元素,但隨后必須對該選擇器的每個變體進行此操作:

a:not(#epLogin):hover,
a:not(#epLogin):active,
a:not(#epLogin):focus,
#Mainbody div.tags a:not(#epLogin):hover,
#Mainbody a:not(#epLogin)

但是我不會那樣做。 再次將屬性設置為基本值要簡單得多。 特別是在使用CSS預處理器時。 例如:

a:hover, a:active, a:focus {
    color: #3498db;
}

#epLogin a:hover, #epLogin a:active, #epLogin a:focus {
    color: #fff;
}

暫無
暫無

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

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