【问题标题】:Link only underlines when hovering href悬停href时仅链接下划线
【发布时间】:2014-04-12 05:09:02
【问题描述】:

老实说,我不知道如何用词来表达标题,但如果你看一下这个例子,你就会明白我在说什么。我希望下划线在悬停列表项时更改颜色,而不仅仅是在悬停href时。

演示: http://jsfiddle.net/wsa9f/

HTML:

<div id="main-nav">
  <ul>
    <li><a href="">Nav Item 1</a></li>
    <li><a href="">Nav Item 2</a></li>
    <li><a href="">Nav Item 3</a></li>
  </ul>
</div>

CSS:

#main-nav {
    background-color: #990000;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#990000), to(#8b0000)); /* Chrome, Safari 4+ */
    background-image: -webkit-linear-gradient(top, #990000, #8b0000); /* Chrome 10-25, iOS 5+, Safari 5.1+ */
    background-image: -moz-linear-gradient(top, #990000, #8b0000); /* Firefox 3.6-15 */
    background-image: -o-linear-gradient(top, #990000, #8b0000); /* Opera 11.10-12.00 */
    background-image: linear-gradient(to bottom, #990000, #8b0000); /* Chrome 26, Firefox 16+, IE 10+, Opera 12.10+ */
    bottom: 0;
    position: absolute;
    height: 45px;
    width: 100%;
}
#main-nav li {
    border-right: 1px solid #9f4f49;
    color: #ffffff;
    float: left;
    font-family:'Ubuntu', sans-serif;
    font-size: 1.6em;
    font-weight: 300;
    height: 15px;
    list-style-type: none;
    padding: 8px 24px 22px 24px;
    text-align: center;
}
#main-nav li#iu-degrees-link {
    width: 181px;
}
#main-nav li#iupui-degrees-link {
    width: 108px;
}
#main-nav li#research-link {
    width: 80px;
}
#main-nav li:focus, #main-nav li:hover {
    background-color: #bd0202;
}
#main-nav a {
    border-bottom: 4px solid #ffffff;
    color: #ffffff;
    padding-bottom: 5px;
}
#main-nav a:focus, #main-nav a:hover {
    border-color: #91d6bd;
    text-decoration: none;
}

【问题讨论】:

    标签: html css navigation hover nav


    【解决方案1】:

    我的理解是,您希望一切都相同,但将鼠标悬停在 li 父级上时应用绿色。在这种情况下,您希望在 CSS 中选择 li 悬停并应用于子 a。请参阅 this fiddle。相关代码更改为:

     #main-nav li:hover a{
         border-color: #91d6bd;
         text-decoration: none;
     }
    

    【讨论】:

    • 甜蜜!这正是我所需要的。谢谢! :)
    【解决方案2】:

    这里:http://jsfiddle.net/wsa9f/1/

    您在正常状态下创建边框并在悬停时更改它。

    我删除了边框的创建并将其移至悬停状态。

            #main - nav a {
                color: #ffffff;
                padding - bottom: 5px;
            }
    
            #main - nav a: focus,
            #main - nav a: hover {
                border - bottom: 4px solid #91d6bd;
                text-decoration: none;
            }
    

    【讨论】:

    • 我需要关闭悬停的白色下划线,但只要将鼠标悬停在“按钮”上,下划线就会改变颜色,而不仅仅是链接
    • 对不起@ansarob 我错过了你的问题。将:hover 状态添加到列表项。那应该这样做。有时间我会更新我的答案。
    【解决方案3】:
    #main-nav a {
        border-bottom: 4px solid #ffffff;
        color: #ffffff;
        padding-bottom: 5px;
        text-decoration: none;
    }
    
    #main-nav li a:focus,
    #main-nav li:hover a {
        border-color: #91d6bd;
    }
    

    【讨论】:

      猜你喜欢
      • 2013-04-15
      • 2013-05-09
      • 2014-02-11
      • 2012-09-20
      • 2013-03-07
      • 2013-09-18
      • 2014-08-30
      • 2014-01-23
      • 1970-01-01
      相关资源
      最近更新 更多