2010-04-23 63 views
1

新手問題的屬性在CSS:更改CSS

我已經定義了以下樣式:

TABLE.tabulardata th { 
    font: bold 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif; 
    background: #CAE8EA url(images/bg_header.jpg) no-repeat; 
} 

我想創建一個相同的風格,但具有不同的背景顏色。

問題:是否可以參數化屬性。在這種情況下的背景顏色還是我需要再次複製相同的樣式

回答

1

喜歡這個?

.myclass { 
    font: bold 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif; 
    background: url(images/bg_header.jpg) no-repeat; 
} 


TABLE.tabulardata th { 
    background-color: #CAE8EA; 
} 

然後只需添加名爲 「myclass」 你要共享的屬性的任何元素..

+0

如果你喜歡這種東西,你可能想看看LESS這樣的東西 - http://lesscss.org/ 你可以聲明變量來保存樣式,並隨時調用它們,以重用/混合一堆樣式一起變成新的:) – Jeriko 2010-04-23 10:35:13

+0

感謝Jeriko的快速回答。幫助我 我會考慮LESS選項:) – balalakshmi 2010-04-23 11:04:40

+0

LESS和HAML對我來說是很棒的發現 - 它們將開發者(至少是IMO)最無聊的部分變得輕而易舉。樂意效勞! – Jeriko 2010-04-23 11:07:40

-1

background-color: red

+0

這個問題不是關於設置背景顏色(他已經在問題的例子中做過),而是關於元素之間有相似的風格,但有一些區別。見Jeriko的答案。 – Fenton 2010-04-23 10:27:27

0

這是不可能的純CSS。你可以做的是創造3種樣式類,一個是兩個共同的兩者結合,然後將其分配給一個元素

.font { font-family: Linux Biolinum; } 
.red { color:red; } 
.blue { color:blue; } 

<div class="font red">red</div> 
<span class="font blue">blue</span> 
0

一種方法是:

TABLE.tabulardata th, TABLE.tabulardataOther th { 
    font: bold 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif; 
    background: #CAE8EA url(images/bg_header.jpg) no-repeat; 
} 

TABLE.tabulardataOther th { 
    background: #FFF url(images/other_header.jpg) no-repeat; 
} 

這工作,因爲CSS優先。第一行將tabulardatatabulardataOther設置爲相同的樣式。然後第二行覆蓋tabulardataOther的背景(其他屬性保持不變)。