上面的代码有三个问题。首先,你错过了关闭第一个<div>
,这可能是为什么navbars坐在一起。其次,您使用重复ID navbarSupportedContent
。第三,你实际上没有任何按钮来切换你的导航栏,所以它们根本不会出现在移动显示屏上。
要解决在手机上能够切换多个导航栏的问题,您需要将navbar-collapse
作为包含两个导航栏div的单个父div。
因此,你实际上可能寻找的是这样的:
<nav class="navbar navbar-toggleable-md navbar-light bg-faded">
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon">Toggle Navigation</span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<div>
// first line
</div>
<div>
// second line
</div>
</div>
</nav>
我创建了一个BootPly展示这个here。
编辑:
默认情况下,引导4使用flex
的导航栏,但默认情况下不实际添加所需的flex-flow
。您可以解决此通过添加:
.navbar-collapse {
flex-flow: row wrap;
}
需要注意的是,你还需要一个flex-direction
添加到您的行,并指定他们应该占据柔性的宽度的100%。我给的DIV这一类flex-row
(在flex.scss
默认名称):
.flex-row {
flex-direction: row;
width: 100%;
}
我创建了一个新的BootPly覆盖这个here。
希望这会有所帮助! :)
谢谢,但它似乎工作在Bootstrap 3,但不在Bootstrap 4中http://www.bootply.com/kEkDapU1QY – Jamgreen
我已更新我的答案,以涵盖Bootstrap 4使用Flexbox的事实:) –