具有活动LI的菜单

时间:2012-10-19 16:52:27

标签: css menu html-lists

也许新鲜的眼睛可以看到我的错误,但我希望活动菜单项具有不同的风格...

HTML:

<div id="menu">
    <ul>
        <li id="active"><a href="#">Home</a></li>
        <li><a href="#">Products</a></li>
        <li><a href="#">Services</a></li>
        <li><a href="#">About</a></li>
        <li><a href="#">Contact</a></li>
    </ul>
    </div>

我的CSS:

#menu ul {list-style-type: none;height: 40px;float: left;margin-top: 43px;margin-left:-32px;}
#menu li {
float: left;
}
#menu li #active {
background: url(../images/menu-bg-hover.png) no-repeat;
color: #ffffff;
}
#menu li a {
background: url(../images/menu-bg.png) no-repeat;
display: block;
width: 100px;
height: 40px;
text-decoration: none;
font-size: 16px;
color: white;
margin: 0 auto;
text-align: center; 
padding-top: 10px;
color:#424242;
font-family: "Helvetica", Arial, sans-serif; 
}

3 个答案:

答案 0 :(得分:2)

只需修改这样的风格:

#menu li#active {
  background: url(../images/menu-bg-hover.png) no-repeat;
  color: #ffffff;
}

您已将其写为#menu li #active而不是#menu li#active

答案 1 :(得分:0)

将您的CSS更新为#menu li#active a并将其放在#menu li a下方。这将确保样式覆盖默认样式,在本例中为背景图像和文本颜色。

#menu li #active强制浏览器在active下找到ID为li的子元素。

答案 2 :(得分:0)

删除

#menu li #active {
background: url(../images/menu-bg-hover.png) no-repeat;
color: #ffffff;
}

ADD

#menu #active a{
background: url(../images/menu-bg-hover.png) no-repeat;
color: #ffffff;
}