2011-02-22 31 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