为什么我在a:hover标签上有这种奇怪的CSS行为?

时间:2014-09-17 11:40:44

标签: html css css3

我正在处理这个自定义主题的问题:http://www.asper-eritrea.com/

问题在于,当您将鼠标悬停在链接上时(例如帖子的标题),它会将颜色更改为黄色,以使文本显示为不可见。

这是因为它使用了这个CSS设置(我用FireBug看到它):

.widget-sidebar ul li a, a:hover {
    color: #f1b000;
}

但是为什么它使用这个CSS设置?这不是包含在列表中的链接,该列表包含在具有类 widget-sidebar

的元素中

如何解决此问题?

TNX

5 个答案:

答案 0 :(得分:4)

逗号分隔完整的选择器。您的代码相当于:

.widget-sidebar ul li a {
    color: #f1b000;
}

a:hover {
    color: #f1b000;
}

您需要为两个部分指定.widget-sidebar ul li

答案 1 :(得分:1)

因为您的CSS申请了所有链接。对于特定限制,您必须使用如下。

 .widget-sidebar ul li a, .widget-sidebar ul li a:hover {
  color: #f1b000;
 }

答案 2 :(得分:1)

CSS规则意味着,选择小工具栏中ul的li中的所有链接以及悬停时的所有标签,您要查找的是:

.widget-sidebar ul li a, .widget-sidebar ul li a:hover {
    color: #f1b000;
}

这意味着即使在悬停时它们也总是黄色

答案 3 :(得分:1)

你有两个选择器。首先是.widget-sidebar ul li a,第二个是a:hover 将其更改为.widget-sidebar ul li a, .widget-sidebar ul li a:hover {}

答案 4 :(得分:1)

将CSS样式更改为

.widget-sidebar ul li a, .widget-sidebar ul li a:hover {
   color: #f1b000;
 }