Bootstrap 3.0 导航栏中的多个折叠按钮
Posted
技术标签:
【中文标题】Bootstrap 3.0 导航栏中的多个折叠按钮【英文标题】:Multiple Collapse buttons in navbar with Bootstrap 3.0 【发布时间】:2013-09-20 04:52:02 【问题描述】:我正在使用 Bootstrap 3.0 显示带有一些链接和搜索字段的导航栏。 当我转到“移动版”时,我有一个按钮可以折叠导航栏并显示所有内容:链接和搜索字段。现在我需要两个按钮,一个只折叠导航栏的链接,另一个按钮只折叠搜索字段。我该怎么做?
【问题讨论】:
【参考方案1】:将链接和搜索表单分成两个navbar-collapse
元素,并让每个按钮指向对应的一个:
示例标记:
<nav class="navbar navbar-default" role="navigation">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#search">Toggle search</button>
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#links">Toggle links</button>
<a class="navbar-brand" href="#">Brand</a>
</div>
<ul class="collapse navbar-collapse nav navbar-nav" id="links">
<!--Links go here-->
</ul>
<div class="collapse navbar-collapse" id="search">
<form class="navbar-form navbar-left" role="search">
<div class="form-group">
<input type="text" class="form-control" placeholder="Search">
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
</div>
</nav>
然后,您只需通过将其添加到您的 CSS 中来修复 .navbar-nav
和 .navbar-collapse
之间的一些冲突样式:
@media (max-width:767px)
.navbar-nav.navbar-collapse
margin-left: 0;
margin-right: 0;
padding-left: 0;
padding-right: 0;
这是一个demo fiddle
【讨论】:
感谢您的解决方案。我还发现有必要在上面的.navbar-nav.navbar-collapse
样式中添加margin-top:0;
和margin-bottom:0;
,否则默认的垂直边距会在.navbar-nav 滑动关闭时导致轻微的跳跃。这是amended fiddle
我正在寻找一个 jQuery 解决方案来实现搜索,但没有意识到您可以只复制 Bootstrap 的菜单按钮。想想看,这应该是 Bootstrap 文档的一部分,因为可折叠搜索也是一种常见的响应模式。感谢您的聪明解决方案!以上是关于Bootstrap 3.0 导航栏中的多个折叠按钮的主要内容,如果未能解决你的问题,请参考以下文章