我有一個3scss文件是base.css
,layout.css
和contents.css
。我宣佈他們爲如下:如何覆蓋沒有特異性的類?
<link rel="stylesheet" href="base.css">
<link rel="stylesheet" href="layout.css">
<link rel="stylesheet" href="contents.css">
base.css
是默認的風格元素。我使用layout
作爲網站的header
,footer
以及wrapper
。至於contents.css
,這個名字說明了一切。是的,這是網站的所有內容。由於我分開了,我實際上沒有使用特異性。例如像:
base.css
input {
padding: 12px 0 12px 0;
}
layout.css中
layout-wrapper{
/*some styles*/
}
contents.css
input {
font-size:1.5em;
padding: 2px 0 2px 0;
}
我除了覆蓋contents.css
的input
之外,base.css
的樣式首先被讀取,然後是contents.css
。我想知道爲什麼它不適用於input
,因爲在其他元素中它很好。我能實現我的目標,如果我把一個特異性我input
元素,但它應該是這樣的:
contents.css
layout-wrapper{
/*some styles*/
input {
font-size:1.5em;
padding: 2px 0 2px 0;
}
}
這會損害分離的佈局和內容的目的。所以我的問題是如何從內容中覆蓋輸入樣式而沒有任何特殊性?
我不想使用!非常重要,除非它確實需要。除了特異性之外,真的沒有別的辦法嗎?如果我添加一個特異性,那麼我的scss將會更深5-6級。我不想不惜一切代價去深入。由於無序列表,它有4-5層深的麻煩。 – user3771102
然後添加一個類來輸入,並在你的content.css風格中使用更具體的類的輸入,它仍然是我給出的答案, - 特異性 - 檢查[特異性計算器](https://特性。 keegan.st/) – dippas
嗯,我知道如何把特異性好,但我的問題是我的代碼將被重複,如果我這樣做。儘可能多的我想我的代碼被重用。 – user3771102