2017-05-12 47 views
-2
html, body, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, 
big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, 
sup, sub, tt, var, u, i, center, ul, ol, li, dl, dt, dd, tfoot, caption, form, fieldset, 
legend, input, button, textarea, select, label, applet, object, iframe, audio, video, 
canvas, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, 
nav, section, summary { 
    font-family: inherit; line-height: inherit; 
    vertical-align: baseline; border: 0; outline: 0; padding: 0; margin: 0; 
} 

我不希望這樣會影響div.base中的任何元素。如何排除CSS選擇器應用於類內的元素?

您有解決方案嗎?

+0

「我相信OP想爲他列入他的問題,適用於所有情況的聲明,而不是div.base的孩子 - 帕特里克·穆爾」 –

+0

只是重寫這些屬性'與div.base' '!important' –

回答

-1

如果你的問題是我如何將一個CSS屬性或一組屬性應用於一切,那麼你可以這樣做。

* { 
     font-family: inherit; 
     line-height: inherit; 
     vertical-align: baseline; 
     border: 0; 
     outline: 0; 
     padding: 0; 
     margin: 0; 
    } 
    div.base { 
    #set properties for div.base here 
    } 
+0

我相信OP希望他的問題中包含的聲明適用於所有情況,但不適用於'div.base'的子節點 –

+0

您是否閱讀過該問題?這顯然不是他們想要的 – Li357

+0

他可以重寫'div.base'上的樣式我將編輯顯示。 –

0

試試看:not()選擇器。

的否定CSS僞類,:not(X),具有官能符號採取簡單選擇X作爲參數。它匹配未由參數表示的元素。 X不得包含其他否定選擇器。 (從MDN

* { }樣式所有元素。添加:not(.base)以排除具有基類的元素。

*:not(#div1){ 
    color:red; 
} 

實施例:

*:not(.base) { 
 
    font-family: inherit; 
 
    line-height: inherit; 
 
    vertical-align: baseline; 
 
    border: 0; 
 
    outline: 0; 
 
    padding: 0; 
 
    margin: 0; 
 
}
<body> 
 
    <h1>Hello</h1> 
 
    <div> 
 
    <h1 class="base">Text</h1> 
 
    </div> 
 
</body>

+0

我不認爲它的作品,如果他只想要目標與類名'基地' –

+0

謝謝。但這不是我所需要的 –

0

添加其重置爲各元素的那些屬性的此CSS規則在div.base

div.base * { 
    font-family: initial; line-height: initial; 
    vertical-align: initial; border: initial; outline: initial; padding: initial; margin: initial; 
} 

initial CSS關鍵字將屬性的初始值應用於元素。 - MDN

+0

非常感謝! –

相關問題