Bootstrap 导航菜单换行
Bootstrap nav menu going to new line
我正在开发一个带有相当大徽标和大菜单的网站。
问题是 bootstrap 菜单项(带有 <a>
标签和菜单项)在页面宽度减小时换行,即使 space 是空的它可以占据。
有人可以解释为什么会这样吗?
注:
- 在视口宽度为 996px 时,徽标和菜单在同一行并且右侧有足够的 space
- 在视口宽度为 986px 时,菜单现在转到第二行,尽管(我认为)它应该占据右边的 space
示例 js-fiddle:
https://jsfiddle.net/ahmed_anas/oq09gksL/
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css" rel="stylesheet"/>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"/>
<nav class="navbar navbar-inverse navbar-fixed-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="#">Project name</a>
</div>
<div id="navbar" class="collapse navbar-collapse" style="
/* float: right; */
/* width: 0px; */
">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
<li class="active"><a href="#">Home</a></li><li class="active"><a href="#">Home</a></li>
<li><a href="#about">About</a></li><li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li><li><a href="#contact">Contact</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</nav>
我认为这是因为容器 div 上的媒体查询强制它在视口宽度小于 992px 时具有 750px 的宽度。在 chrome 检查器中,您可以看到如下媒体查询:
@media (min-width: 992px)
.container {
width: 970px;
}
@media (min-width: 768px)
.container {
width: 750px;
}
我正在开发一个带有相当大徽标和大菜单的网站。
问题是 bootstrap 菜单项(带有 <a>
标签和菜单项)在页面宽度减小时换行,即使 space 是空的它可以占据。
有人可以解释为什么会这样吗?
注:
- 在视口宽度为 996px 时,徽标和菜单在同一行并且右侧有足够的 space
- 在视口宽度为 986px 时,菜单现在转到第二行,尽管(我认为)它应该占据右边的 space
示例 js-fiddle:
https://jsfiddle.net/ahmed_anas/oq09gksL/
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css" rel="stylesheet"/>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"/>
<nav class="navbar navbar-inverse navbar-fixed-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="#">Project name</a>
</div>
<div id="navbar" class="collapse navbar-collapse" style="
/* float: right; */
/* width: 0px; */
">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li>
<li class="active"><a href="#">Home</a></li><li class="active"><a href="#">Home</a></li>
<li><a href="#about">About</a></li><li><a href="#about">About</a></li>
<li><a href="#contact">Contact</a></li><li><a href="#contact">Contact</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</nav>
我认为这是因为容器 div 上的媒体查询强制它在视口宽度小于 992px 时具有 750px 的宽度。在 chrome 检查器中,您可以看到如下媒体查询:
@media (min-width: 992px)
.container {
width: 970px;
}
@media (min-width: 768px)
.container {
width: 750px;
}