【问题标题】:Bootstrap 3 NavBar Move Link Underline UpBootstrap 3 NavBar 移动链接下划线向上
【发布时间】:2015-08-10 22:20:03
【问题描述】:

我为网站的桌面视图构建了一个行高为 150 像素的标准固定顶部导航栏。此外,我将链接样式设置为悬停时带有红色下划线,但下划线位于导航栏底部而不是文本下方。

我知道这是因为行高,但我想知道如何将其移回文字下方。

小提琴链接:JSFiddle link

这是 CSS:

.navbar-brand,
.navbar-nav li a {
    line-height: 150px;
    height: 150px;
    padding-top: 0;
    background-color:#FFFFFF;
}
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li >   a:focus { border-bottom:3px solid #9e1e22; }

HTML:

<nav class="navbar navbar-default navbar-fixed-top">
    <div class="container-fluid">
      <!-- Brand and toggle get grouped for better mobile display -->
      <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#topFixedNavbar1"><span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></button>
        <a class="navbar-brand" href="index.html">Brand</a></div>
      <!-- Collect the nav links, forms, and other content for toggling -->
      <div class="collapse navbar-collapse" id="topFixedNavbar1">
        <ul class="nav navbar-nav navbar-right">
          <li><a href="#">About</a></li>
          <li><a href="#">News</a></li>
          <li class="divider"></li>
          <li><a href="#">Assessments</a></li>
          <li><a href="#">Improvements</a></li>
          <li><a href="#">Incident Response</a></li>
          <li class="divider"></li>
          <li><a href="#">Contact</a></li>
        </ul>

      </div>
      <!-- /.navbar-collapse -->
    </div>
    <!-- /.container-fluid -->
  </nav>

【问题讨论】:

  • 你为什么要使用行高。使用填充来完成您在这里寻找的东西会更好吗?那个,或者其他属性可能更适合你所追求的效果,也可以解决这个下划线问题。
  • @kylebellamy 你有没有机会上传截图,因为我不认为你的小提琴在工作
  • 我愿意提供任何解决方案来使这项工作更好。我该怎么办?
  • 它有效,你只需要从页面中拉出地狱。我会去掉断点。

标签: css twitter-bootstrap navbar


【解决方案1】:

这是你的意思吗?将 NAV 保持在 150,但将鼠标悬停在链接正下方。

@media (min-width: 768px) {
  .navbar-default .navbar-brand,
  .navbar-default .navbar-nav li a {
    background-color: #FFFFFF;
  }
  .navbar-default .navbar-nav > li > a:hover,
  .navbar-default .navbar-nav > li > a:focus {
    border-bottom: 3px solid #9e1e22;
  }
  .navbar.navbar-default {
    height: 150px;
    padding-top: 45px;
  }
}
.navbar.navbar-default {
  background-color: #FFFFFF;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  border-bottom: 3px solid #9e1e22;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet" />
<nav class="navbar navbar-default navbar-fixed-top">
  <div class="container-fluid">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#topFixedNavbar1"><span class="sr-only">Toggle navigation</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span>

      </button> <a class="navbar-brand" href="index.html">Brand</a>

    </div>
    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse" id="topFixedNavbar1">
      <ul class="nav navbar-nav navbar-right">
        <li><a href="#">About</a>

        </li>
        <li><a href="#">News</a>

        </li>
        <li class="divider"></li>
        <li><a href="#">Assessments</a>

        </li>
        <li><a href="#">Improvements</a>

        </li>
        <li><a href="#">Incident Response</a>

        </li>
        <li class="divider"></li>
        <li><a href="#">Contact</a>

        </li>
      </ul>
    </div>
    <!-- /.navbar-collapse -->
  </div>
  <!-- /.container-fluid -->
</nav>

【讨论】:

  • 啊,我知道我哪里出错了!将行高与链接结合起来,而不是在盒子本身上使用它。当我回到我的办公桌时必须检查一下,但我认为你做到了。
  • 应该是这样,然后您可以根据需要调整媒体查询,
【解决方案2】:

我知道它不完全是您所追求的,而不是在菜单选项下划线,您有没有想过只是在悬停时更改菜单选项的颜色。

.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus
{
     color: #9e1e22;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-01
    • 2019-03-04
    • 1970-01-01
    相关资源
    最近更新 更多