HTML / CSS当前活动菜单未显示活动状态

时间:2015-12-31 15:54:43

标签: javascript html css

请参阅https://jsfiddle.net/qvh5jsc4/1/

我正在考虑

的工作
li a:hover:not(.active) {
    background-color: #111;
}

重置无活动颜色。但这不起作用。主页链接保持绿色。

那么如何使活动链接显示为绿色。

我有以下代码:

CSS

ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #333;
}

li {
    float: left;
}

li a {
    display: block;
    color: white;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}

li a:hover:not(.active) {
    background-color: #111;
}

.active {
    background-color: #4CAF50;
}

HTML

<ul>
  <li><a class="active" href="#home">Home</a></li>
  <li><a href="#news">News</a></li>
  <li><a href="#contact">Contact</a></li>
  <li><a href="#about">About</a></li>
</ul>

3 个答案:

答案 0 :(得分:1)

使用jquery:https://jsfiddle.net/xqyhwq36/3/

尝试此操作
li a:hover:not(.active) {
    background-color: #111!important;
}

li a:hover {
    background-color: #444;
}
.active {
    background-color: #4CAF50;
}
$("ul a").click(function(){
$("ul a").removeClass("active");
   $(this).addClass("active");
});

答案 1 :(得分:0)

看看这个:

li a:not(.active):hover {
    background-color: #111;
}

li a.active:hover {
    background-color: #444;
}

首先是id / class选择器,然后是状态选择器。

答案 2 :(得分:0)

CSS中的简单调整应该可以解决问题。

{{1}}