2011-02-22 78 views
0

我在做導航。
這裏是CSS樣式Jquery addclass(),如何處理類衝突

a:link.navA, a:visited.navA 
{ 
    display:block; 
    width:120px; 
    color:#FFFFFF; 
    background-color:#003366; 
    text-align:center; 
    padding:4px; 
    text-decoration:none; 
    font-family:Calibri; 
} 
a:hover.navA 
{ 
    background-color:#336699; 
} 
.selected 
{ 
    background-color:#336699; 
} 

當我選擇一個按鈕,我希望該按鈕的背景顏色將保持不同顏色的喜歡與人徘徊。當我使用addclass("selected")時,所選按鈕不會改變顏色。我認爲這是因爲會有兩個類「navA」和「selected」,它們都定義了背景顏色。我的問題是如何讓選定的班級勝利。 非常感謝!

回答

2

您可以添加重要

.selected { 
    background-color:#336699 !important; 
} 

這將使得該規則覆蓋等。不過,如果你只寫了更好的CSS,會更好。

編輯

例如,如果你想爲同時具有.navA和.selected按鈕不同的背景色,你可以寫你CSS這樣

.navA.selected { 
    background-color:#336699; 
} 

有它像這樣會告訴瀏覽器,任何具有navA和所選類別的項目都應該有不同的bg。這樣,你就不需要添加!important。另外,請記住,只有當您的元素同時應用了這兩個類時,這纔會起作用。

+0

你能提供一些提示嗎?你的意思是我可以將一個大的類如link.navA分成許多小類嗎?然後添加幾個類到元素? – Yao 2011-02-22 17:42:52