将鼠标悬停在li上并改变背景?

时间:2012-08-09 10:58:45

标签: html css hover

将鼠标悬停在活动的li项上时出现问题。

我需要当前的班级与悬停相同,我不知道我哪里出错了。

由于

2 个答案:

答案 0 :(得分:1)

您需要将display: block应用于a标记。样式ali不同,但两者都可以设置背景。您将当前标签的背景设置为li,但是当您悬停时,您将背景应用于a。选择一个并保持一致,我建议adisplay: block;

答案 1 :(得分:1)

我建议进行以下更改:

  1. <li> 有效,而不是<a>
  2. 结合:hover.active规则,以便于维护。
  3. 普通活动/悬停状态的填充不同。
  4. 演示: http://jsfiddle.net/LVLKW/11/


    <强> HTML

    <div id="nav">
        <ul>
            <li class="current"><a href="#">Home</a></li>
            <li><a href="#">About Us</a></li>
        </ul>
    </div>​
    

    <强> CSS

    body {
        background-color: lightblue;
    }
    #nav ul{
        margin-top: 23px;
        list-style: none;
    }
    #nav ul li{
        font-size: 17px;
        padding: 10px 11px 7px 11px;
        font-weight: bold;
        font-family: HelNue;
        display: inline;
    }
    #nav ul li.current,
    #nav ul li:hover{
        font-family: HelNue;
        background-color: white;
        margin: 0;
        color: #58585a;
        -webkit-border-top-left-radius: 10px;
        -webkit-border-top-right-radius: 10px;
        -moz-border-radius-topleft: 10px;
        -moz-border-radius-topright: 10px;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
    }
    #nav ul li:hover a{
        color: #58585a;
    }
    
    #nav ul li a{
        color: black;
    }​