CSS - 无法更改已定义的类

时间:2015-11-02 04:47:35

标签: css

我在ul中定义了一个类:

<ul>
    <li class="current"> <a ............></li>
    <li> <a ...........></li>
</ul>

在CSS中,我试图使类current的项目具有某种颜色和更大胆,同时将列表的其余部分保持为正常权重的默认颜色。

所以在CSS中我写道:

body {
   color: #3d3d3d;
   font-weight: normal;
}

li.current {
   color: #7a78dd;
   font-weight: bold;
}

所以我的问题是,当我写这些时,粗体适用于current类,但不适用于颜色。它仍然是身体的颜色。

我应该尝试解决这个问题的一些方面是什么?感谢。

5 个答案:

答案 0 :(得分:1)

这可能是因为li包含<a>标记。

原因是<a>标签需要明确定义其属性。

定义颜色如下:

li.current a {
   color: #7a78dd;
   font-weight: bold;
}

我知道某些人要覆盖其自定义<a>中的reset.css标记,如下所示(以获取其父元素的颜色),但这是个人的偏好。

a {
  color: inherit;
}

答案 1 :(得分:1)

因为您已将li上的颜色设为静态a标记,而默认color: -webkit-link;因此无法在a上看到颜色。你可以做什么,你可以给a标签本身,如下:

li.current a {
   color: #7a78dd;
   font-weight: bold;
}

See it in Action

答案 2 :(得分:1)

您应该尝试这样做,因为您在notifi.php上添加了颜色而不是json的{​​{1}} -

li

答案 3 :(得分:1)

试试这个

li.current a {
color: #7a78dd !important;
font-weight: bold;
}

答案 4 :(得分:1)

请尝试在您的css中包含您的锚标记

&#13;
&#13;
body {
   color: #3d3d3d;
   font-weight: normal;
}

li.current a {
   color: #468847;
   font-weight: bold;
}
&#13;
<ul>
    <li class="current"> <a href="#">one</a></li>
    <li> <a href="#">two</a></li>
</ul>
&#13;
&#13;
&#13;