類寫一些CSS類,如這些:我如何繼承CSS
.bad
{
background:#fff0f0;
color:#800;
width:1024px;
padding-left:10px;
margin-top:0;
margin-bottom:0;
}
.good
{
background:#eeffee;
color:#008800;
width:1024px; //same as above
padding-left:10px; //same as above
margin-top:0; //same as above
margin-bottom:0; //same as above
}
正如你所看到的6個屬性,4完全相同。所以我想通過編寫一個.common
類避免這種重複,並確定上述類時繼承他們的,如下圖所示:
.common
{
width:1024px;
padding-left:10px;
margin-top:0;
margin-bottom:0;
}
.good, .common //inherit .commom
{
background:#eeffee;
color:#008800;
}
.bad, .common //inherit .commom
{
background:#fff0f0;
color:#800;
}
但這些變化不會產生對瀏覽器相同的效果。我將它們應用於<p>
標籤,並且在後一種情況下,我看到兩個連續的<p
>標籤之間的差距。所以看起來margin-*
屬性沒有被繼承(或者在第一種情況下不起作用)。
我正在尋找一種避免代碼重複的方法。有什麼辦法可以實現嗎?
我不允許使用less或任何外部工具或庫。我只想讓我的代碼在原生CSS中看起來更簡短,我可以把它放在html文件本身中(沒有外部的.css文件)。我被允許在HTML本身使用JavaScript(儘管沒有jQuery)。
您需要同時利用CSS類的HTML元素。你能告訴我們你的HTML代碼使用這些類(好,壞,醜:P) – GoodSp33d
你不能繼承類。只有屬性可以在CSS中繼承。除了類選擇器,CSS沒有任何類的概念。 –
@ JukkaK.Korpela:好的。我不太瞭解CSS,所以我不知道'.good,.common {...}'在我的代碼中意味着什麼?這是否意味着'.good'應該包含'.common'的所有內容? – Nawaz