【发布时间】:2013-09-18 13:15:41
【问题描述】:
我正在尝试将我的 Twitter Bootstrap 2 导航栏迁移到 Bootstrap 3。我的导航栏中有 3 个部分。
“myContent1”和“myContent2”将始终可见。 “myContent3”将在小屏幕上折叠。但是当我单击小屏幕设备中的堆叠按钮时,折叠菜单不会打开。当我点击按钮时没有任何反应。
我把它放入小提琴中:http://jsfiddle.net/mavent/LDP8K/6/
<nav class="navbar navbar-inverse navbar-fixed-top navbar-sam-main" role="navigation">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<a class="navbar-brand navbar-left" href="" title="aaaa" id="MyContent1">
MySite
</a>
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-mycol">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<ul class="nav navbar-nav navbar-left" id="myContent2">
<li class="dropdown" id="users">
<a class="navbar-brand" href="" title="aaa" style="display:inline-block;padding-right:0px;">
<img src="" width="24" height="24" alt="aaaa">
MyName
</a>
<a class="dropdown-toggle" data-toggle="dropdown" href="#users" style="display:inline-block;padding-left:0px;">
<b class="caret" style="border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 6px solid #999;"></b>
</a>
<ul class="dropdown-menu">
<li><a href=""><img src="" width="24" height="30"/> OtherName</a></li>
<li class="divider"></li>
<li><a href="">AAAA</a></li>
<li><a href="">BBB</a></li>
</ul>
</li>
</ul>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse navbar-mycol">
<ul class="nav navbar-nav navbar-right" id="myContent3">
<li><a href="">UUUU</a></li>
<li><a href="">YYYYY</a></li>
<li class="dropdown" id="wer">
<a class="dropdown-toggle" data-toggle="dropdown" href="#wer">Tools
<b class="caret"></b>
</a>
<ul class="dropdown-menu">
<li><a href="">aaaa</a></li>
<li><a href="">bbbb</a></li>
<li><a href="">cccc</a></li>
</ul>
</li>
</ul>
</div><!-- /.navbar-collapse -->
</nav>
编辑:根据一个人的建议,我将“切换按钮”放在了navbar-header 部分之外。我给按钮top:0 and right:0绝对样式给了按钮。但在这种情况下,如果屏幕很小,myContent2 会渗透到按钮中。你可以从这里看到这种行为:http://jsfiddle.net/mavent/paXt9/2/
Edit2:我需要这种行为:
对于大屏幕,一切都是可见的。
对于较小的屏幕,myContent2 是可见的,myContent3 是折叠的。如果单击按钮,myContent3 将不会折叠。
对于非常小的屏幕,myContent2 将显示在下一行。所以myContent2和button的位置不会冲突。
【问题讨论】:
-
尝试将
navbar-header的结束标签移动到切换按钮之后:jsfiddle.net/koala_dev/LDP8K/8 -
那么您可能希望将按钮的 z-index 设置为显示在 myContent2 的顶部:jsfiddle.net/koala_dev/LDP8K/9
-
尝试将两个元素包装在一个容器中
<span>: jsfiddle.net/koala_dev/fgNZx/1 -
抱歉回复晚了,你只需要像我们之前一样用切换按钮调整链接的z-index,如果你想在内容落入时对齐中心第二行您可以设置媒体查询,只需注意您需要计算内容不适合一行的点,并且它可能无法跨设备一致地工作
标签: jquery html css twitter-bootstrap