引导程序导航下拉列表的问题

时间:2015-11-17 19:53:59

标签: html css twitter-bootstrap

我已经使用一些自定义样式创建了一个bootstrap导航,但我不确定为什么下拉列表是如此奇怪。

这是截图:

screenshot of issue

这是我的HTML&自定义CSS:



nav.navbar-static-top {
    margin-bottom: 0;
    background: black;
    height: 100px;
    line-height: 100px;
}

.navbar .navbar-nav {
    display: inline-block;
    float: none;
    vertical-align: bottom;
    background: black;
}

.navbar .navbar-collapse {
    text-align: center;
}

.navbar .navbar-collapse li a {
    color: white;
}

@media (max-width: 768px) {
    .navbar-toggle {
        position: absolute;
        right: 0;
        top: 25%;
    }
}

<nav class="navbar navbar-inverse navbar-static-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="#bs-example-navbar-collapse-1" aria-expanded="false">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
            </div>

            <!-- Collect the nav links, forms, and other content for toggling -->
            <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
                <ul class="nav navbar-nav">
                    <li><a href="#">Blog</a></li>
                    <li><a href="#">How it Works</a></li>
                    <li><a href="#">What you get</a></li>
                    <li><a href="#">The manifesto</a></li>
                    <li><a href="#">FAQ</a></li>
                    <li><a href="#">My Account</a></li>
                    </li>
                </ul>
                </ul>
            </div>
            <!-- /.navbar-collapse -->
        </div>
        <!-- /.container-fluid -->
    </nav>
&#13;
&#13;
&#13;

我可以让导航回到全宽但是,当我这样做时,导航栏不会重新折叠。

为此,我只是将其添加到我的媒体查询中:

.navbar .navbar-nav {
    display: block;
}

然而,这并不理想。

我想做的只是;

当视口大于768px时:

  • 将导航项目置于导航底部
  • 将导航项颜色设置为白色

当视口小于768px时:

  • 切换为打开时,导航居中且全宽(默认情况下应为)
  • 从导航栏的底部打开导航(就像通常在BS中一样),但由于某种原因,导航卡在顶部?

我不能为我的生活弄清楚,因为我的代码不应该以这种方式影响事物。

如果需要澄清,请在下面询问!

干杯,

- SD

1 个答案:

答案 0 :(得分:0)

您必须调整一些CSS规则:您不需要任何navbar-toggle类规则,您可以在导航栏上使用填充而不是height / line-height。 inline-block规则导致导航栏未在768px下扩展为全宽,因此您应将这些规则插入到媒体查询中。

请参阅工作示例摘录。

&#13;
&#13;
.navbar.navbar-inverse {
  background: black;
}
.navbar.navbar-inverse .navbar-collapse {
  text-align: center;
}
.navbar.navbar-inverse .navbar-nav > li > a {
  color: white;
}
@media (min-width: 768px) {
  .navbar.navbar-inverse {
    padding-top: 50px;
    padding-bottom: 0px;
  }
  .navbar.navbar-inverse .navbar-nav {
    display: inline-block;
    float: none;
    vertical-align: bottom;
    background: black;
  }
}
@media (max-width: 767px) {
  .navbar.navbar-inverse {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.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-inverse navbar-static-top">
  <div class="container-fluid">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>

      </button>
    </div>
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
      <ul class="nav navbar-nav">
        <li><a href="#">Blog</a>

        </li>
        <li><a href="#">How it Works</a>

        </li>
        <li><a href="#">What you get</a>

        </li>
        <li><a href="#">The manifesto</a>

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

        </li>
        <li><a href="#">My Account</a>

        </li>
      </ul>
    </div>
  </div>
</nav>
&#13;
&#13;
&#13;