Bootstrap菜单重叠下拉列表的问题

时间:2015-03-20 11:08:48

标签: javascript jquery html css twitter-bootstrap

我的两个导航菜单出了问题。我正在使用两个与Bootstrap一起提供的相同类型的导航。第一个导航使用“navbar-inverse”类,第二个导航菜单使用“navbar-default”类进行一些小修改。单击右上角的下拉菜单时会出现此问题;第二个导航菜单将与下拉框重叠,只有菜单下方的内容可见。

请查看下面的附件以供说明。

这是我目前的HTML设置:

<nav class="navbar navbar-inverse navbar-static-top">
  <div class="container">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
        <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="#"><span class="glyphicon glyphicon-home"></span></a>
    </div>
    <div id="navbar" class="collapse navbar-collapse">
      <ul class="nav navbar-nav">
        <li class="active"><a href="#">Hjem</a></li>
        ...
      </ul>
      <ul class="nav navbar-nav navbar-right">
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Innstillinger <span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu">
            ...
          </ul>
        </li>
      </ul>
    </div><!--/.nav-collapse -->
  </div>
</nav>
<nav class="navbar navbar-default navbar-static-top">
  <div class="container">
    <div id="navbar">
      <ul class="nav navbar-nav">
        ...
      </ul>
    </div><!--/.nav-collapse -->
  </div>
</nav>

这是我当前的问题:

enter image description here

我创建了一个带有相应样式表和框架的JSfiddle来查看:http://jsfiddle.net/1L3voL3h/。不幸的是,在这一点上,我还没有能够找到自己的解决方案。提前感谢您的帮助。

4 个答案:

答案 0 :(得分:3)

更改此<nav class="navbar navbar-default navbar-static-top"> 从第二个导航栏到<nav class="navbar navbar-default navbar-static">

答案 1 :(得分:2)

只需为第二个导航栏添加此内容

&#13;
&#13;
<style>
.second-navbar {
    top: 50px;
    z-index: 999;
}
</style>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

您可以更改导航栏默认设置或下拉菜单的z-index。类似的东西:

.navbar-default {
    background: #b6d24b;
    border-radius: 0px;
    z-index: 1;
}

或:

.dropdown-menu {
    z-index: 5
}

答案 3 :(得分:0)

我更新了您的JSFiddle

您只需要添加到CSS:

.navbar-inverse.navbar-static-top {
    z-index: 800;
}
.navbar-default.navbar-static-top {
    z-index: 700;
}

问题是您正在为两个导航栏应用z-index:1000。有了这条规则:

.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}

您应该更改此规则和/或添加我在上面提供的规则,以便为您的第一个导航栏提供更高的z-index值。