2011-04-06 59 views
1

現在,我有CSS這樣的:會發生在一個以上的DIV多個DIV,相同的類,如何減少CSS標記?

#lightbox2wrapper .panel-col-first .pane-node-title { 
text-align:center; 
color:#8A3B3B; 
font-weight:bold; 
font-size:inherit; 
margin-bottom:5px; 
} 

特定.panel-COL-第一.pane節點標題。我不想使用如下語法:

#lightbox2wrapper .panel-col-first .pane-node-title, #div1 .panel-col-first .pane-node-title, #div 2 .panel-col-first .pane-node-title { 
... ... 
} 

它會使CSS非常長。如何縮短上述標記?

謝謝。

回答

1

如果你的邏輯必須明確遵循「適用於一個只有當它出現在B和僅B也是在(C | d |電子| F ...)。

那麼,對不起,但沒有其他辦法可以指定與CSS這個邏輯

注意:您不必在一行中運行所有選擇器,例如,您可以編寫:

#lightbox2wrapper .panel-col-first .pane-node-title, 
#div1 .panel-col-first .pane-node-title {  
    text-align:center; 
    color:#8A3B3B; 
    [etc.] 
} 

如果你仍然不喜歡這樣冗長的選擇器,有一點需要考慮的是較短的類名。你有權訪問代碼來改變它們嗎?

而且您可以修改所有潛在目標元素的類名稱,您可能只想爲該情況創建一個新類,將所有樣式應用於該類,並確保將此類放在目標元素。那麼你的CSS選擇器將不再明確地表達這個邏輯,但它仍然可以工作。但是,如果您試圖覆蓋應用於這些元素的其他樣式,則特定性可能仍然是一個問題。

+0

感謝您的詳細回覆。 – 2011-04-06 19:49:40

0
div.SomedistinctiveClassName .panel-col-first .pane-node-title{ 
... ... 
} 

然後給div的,在您想要的樣式生效,clasname「SomedistinctiveClassName」(可短些),你準備好

相關問題