我有一个<ul>
,其中每个li
都会在:hover
上响应。这是css:
.profile_nav_item:hover {
border-color: #af0621;
}
但是当我点击它们时,它希望这些边框保持颜色。
我有这个jQuery函数:
$('a[rel="tab"]').click(function(e){
var url = $(this).attr('href');
$('.profile_nav_item').css('border-color', 'transparent');
$('.profile_nav_item', this).css('border-color', '#af0621');
但点击后,:hover
css属性不再被调用。有谁知道我怎么解决这个问题?
答案 0 :(得分:3)
您需要将CSS属性重置为''(空字符串),以便样式表再次启动。
$('.profile_nav_item').css('border-color', '');
基本上你将元素样式强制为#af0621
,之后样式表将不会覆盖它(元素样式优先)。
将空字符串值传递给css()
会删除内联样式设置。
答案 1 :(得分:1)
因为内联css属性具有更高的优先级,所以包括一个。因此,当您使用jQuery设置它时,它是这样的:style="border-color: #af0621"
。尝试在你的css中使用!important
:
.profile_nav_item:hover {
border-color: #af0621 !important;
}