bootstrap navbar-static-top 菜单在两行中断
Posted
技术标签:
【中文标题】bootstrap navbar-static-top 菜单在两行中断【英文标题】:bootstrap navbar-static-top menu breaks on two lines 【发布时间】: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> </li>
</ul>
</div>
</div>
</div>
</div>
</div>
【问题讨论】:
你能提供jsfiddle.net吗? http://jsfiddle.net/mk57S/1/ 【参考方案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
答案.. ***.com/a/22228476/1212166
所以这个解决方案不适用于 3.0?如果可能的话,最好有一个全面的解决方案
你的问题有点尴尬,你一次只能使用一个版本,所以......你使用3.0或3.2,选择你想要的?!?但无论如何,我的解决方案应该对两者都适用,只是没有尝试过
这就是我想知道的,谢谢。我的想法是我现在有 3.0,但以后可能会得到 3.2,所以我希望解决方案能够向前兼容......以上是关于bootstrap navbar-static-top 菜单在两行中断的主要内容,如果未能解决你的问题,请参考以下文章
学习 Bootstrap 5 之 Bootstrap 和 Breakpoints
Bootstrap 5 仍然推荐使用 Bootstrap-vue?
bootstrap-flex、bootstrap-grid 和 bootstrap-reboot 的区别