2012-11-24 154 views
0

是否有可能使兩個div具有相同的CSS,像:兩個div相同的CSS?

.Navig1, .Navig11 a { 
    display: block; 
    height: 15px; 
    width: 70px; 
    background-color: {color: Navig Bg 1}; 
    text-align: center; 
    font-size: 8px; 
    line-height: 15px; 
    color: #FFF; 
} 

因爲我不希望我的風格的代碼太長,我需要這兩個看起來相同,但要不同的時候盤旋,我認爲這會做,但這段代碼不起作用。 我在哪裏犯錯?

回答

3

是的,它是可能的:

.Navig1 a, .Navig11 a { 
    display:block; 
    height:15px; 
    width:70px; 
    background-color:#000; 
    text-align:center; 
    font-size:8px; 
    line-height:15px; 
    color:#FFF; 
} 

.Navig1 a:hover { 
    /*css property*/ 
} 

.Navig11 a:hover { 
    /*other css property*/ 
} 
+1

謝謝!這工作。 :) – MSmS

0

CSS不是 「可編程」。沒有變數或方法可以說「這裏包含的使用風格」。

但是,您可以通過從該塊去除BGCOLOR定義和創建修復它一個新的

.Navig1, .Navig11 a { 
    ... as before ... 
} 

.Navig1, .Navig11 { 
    background-color: #xxx; 
} 
+0

[LESS](http://lesscss.org/)可用於獲取CSS來處理變量。 – samael

0

你可以做你想做的是:

.Navig1, .Navig11 a { 
    /* Common Styles */ 
} 

.Navig1:hover { 
    /* Navig1 Specific Styles on Hover */ 
} 

.Navig11 a:hover { 
    /* Navig1 a Specific Styles on Hover */ 
} 

但是,隨着其他回答者提到,你已經破壞了CSS。背景顏色應該怎麼樣?

+0

它不起作用,這就是爲什麼我問。 – MSmS

+0

對不起,我顯然沒有明白的問題:) – csalvato

0

它會更容易制定出你希望達到的目標,如果你也提供HTML內容。沒有必要有兩個CSS類。您可以使用單個CSS類來爲頁面上的多個元素創建樣式。

如果您有多個DIV容器有兩個集一類叫做mynav:

<div class="mynav"></div> 
<div></div> 
<div class="mynav"></div> 

然後一個CSS類將影響兩者。

div.mynav a { 
    display: block; 
    height: 15px; 
    width: 70px; 
    text-align: center; 
    font-size: 8px; 
    line-height: 15px; 
    color: #fff; 
} 

div.mynav a:hover { 
    /* new css */ 
} 

如果你想有一個變化,那麼你只需要創建一個規則,根據你正在做的動作,元素將如何改變。

還要考慮使用一個以上的類的單個元件如果需要的話。你的div可能是:

<div class="mynav someotherclass"></div> 

你可能會發現,對於你在做什麼,一些簡單的Javascript是最好的解決方案。