【问题标题】:bootstrap navbar-static-top menu breaks on two linesbootstrap navbar-static-top 菜单在两行中断
【发布时间】:2014-04-09 07:27:07
【问题描述】:

我遇到了引导导航栏的问题。

我使用 navbar-static-top 制作了菜单 - 起初一切都很好。当菜单被扩展并添加了一些项目时,现在随着之前的宽度折叠,它被分成两行,看起来很糟糕。在 CSS bootstrap'a 中深入挖掘,但没有取得多大成功。请帮忙,怎么到这里?

目前它看起来像这里所示:

导航条码:

<div class="navbar-wrapper">
  <div class="container">

    <div class="navbar navbar-inverse navbar-static-top" role="navigation">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
            <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="bright-logo-text navbar-brand" href="index.html">Clipboard Stripper</a>
        </div>

        <div class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li><a href="index.html">Home</a></li>

            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">Features<b class="caret"></b></a>
              <ul class="dropdown-menu">
                <li><a href="features.html">Features</a></li>
                <li><a href="screenshots.html">Screenshots</a></li>
                <li class="active"><a href="usage.html">Usage</a></li>
              </ul>
            </li>


            <li><a href="features.html">Features</a></li>
            <li><a href="screenshots.html">Screenshots</a></li>
            <!--li class="active"><a href="usage.html">Usage</a></li-->
            <li><a href="download.html">Download</a></li>
            <li><a href="purchase.html">Purchase</a></li>
            <!--li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <b class="caret"></b></a>
              <ul class="dropdown-menu">
              </ul>
            </li-->
          </ul>
          <ul class="nav navbar-nav navbar-right">
            <li><a href="contact.html">Contact</a></li>
            <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</li>
          </ul>
        </div>
      </div>
    </div>

  </div>
</div>

【问题讨论】:

标签: css twitter-bootstrap twitter-bootstrap-3 navbar


【解决方案1】:

您可以使用 CSS 媒体查询更快地折叠它。默认断点为 768px。在这里我们将其更改为 990 像素,以便它在 2 行换行开始之前折叠..

@media (max-width: 990px) {
    .navbar-header {
        float: none;
    }
    .navbar-toggle {
        display: block;
    }
    .navbar-collapse {
        border-top: 1px solid transparent;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
    }
    .navbar-collapse.collapse {
        display: none!important;
    }
    .navbar-nav {
        float: none!important;
        margin: 7.5px -15px;
    }
    .navbar-nav>li {
        float: none;
    }
    .navbar-nav>li>a {
        padding-top: 10px;
        padding-bottom: 10px;
    }
}

演示:http://www.bootply.com/119436

【讨论】:

  • 谢谢,它有效。但是导航按钮位置的尺寸从 992 到 768 与小于 768 之间存在微小差异。如果尺寸在 992 到 768 之间,则导航按钮右侧没有边距。你可以在这里看到它:http://jsfiddle.net/mk57S/1/
  • 最新引导程序 - 使用 this answer。使用上述 CSS 折叠菜单/下拉菜单无法正常工作。
【解决方案2】:

我还想通过 CSS 使用它,而无需重新下载和自定义 Bootstrap,Skelly 答案在 Bootstrap 3 上运行良好,但在我的情况下,Bootstrap 3.2 CSS 改变了一点......这是所有的更新版本需要 CSS

    @media (max-width:992px){
    .navbar-header {
        float: none;
    }
    .navbar-left,.navbar-right {
        float: none !important;
    }
    .navbar-toggle {
        display: block;
    }
    .navbar-collapse {
        border-top: 1px solid transparent;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
    }
    .navbar-fixed-top {
        top: 0;
        border-width: 0 0 1px;
     }
    .navbar-collapse.collapse {
        display: none!important;
    }
    .navbar-nav {
        float: none!important;
        margin-top: 7.5px;
     }
     .navbar-nav>li {
        float: none;
    }
    .navbar-nav>li>a {
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .collapse.in{
        display:block !important;
    } 
}

【讨论】:

  • 你说这适用于 Bootstrap 3.2。我想它也适用于 Bootstrap 3?
  • 对于 Bootstrap 3.0,请查看顶部的 Skelly 答案.. stackoverflow.com/a/22228476/1212166
  • 所以这个解决方案不适用于 3.0?如果可能的话,最好有一个全面的解决方案
  • 你的问题有点尴尬,你一次只能使用一个版本,所以......你使用3.0或3.2,选择你想要的?!?但无论如何,我的解决方案应该对两者都适用,只是没有尝试过
  • 这就是我想知道的,谢谢。我的想法是我现在有 3.0,但以后可能会得到 3.2,所以我希望解决方案能够向前兼容......
猜你喜欢
  • 1970-01-01
  • 2014-05-26
  • 2015-02-13
  • 2016-12-09
  • 1970-01-01
  • 2015-06-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多