大约一年前,@Andres Ilich 为在 Bootstrap 中居中导航栏提供了一个非常优雅的答案。 已发布答案的摘录如下:
<div class="navbar navbar-fixed-top center">
<div class="navbar-inner">
....
</div>
</div>
然后你可以像这样定位 .center 类:
.center.navbar .nav,
.center.navbar .nav > li {
float:none;
display:inline-block;
*display:inline; /* ie7 fix */
*zoom:1; /* hasLayout ie7 trigger */
vertical-align: top;
}
.center .navbar-inner {
text-align:center;
}
由于这也影响了下拉菜单,他补充说:
.center .dropdown-menu {
text-align: left;
}
这样下拉菜单就会正常运行。
现在我面临着类似的问题。导航栏居中精美。下拉菜单效果很好。但是,当您进入平板电脑和移动视口时,移动菜单也会居中。简单地将文本向左对齐并不能解决问题,因为每个无序列表项都需要自己的行。
我一直在试图找出一种方法,我可以简单地在媒体查询中添加一个可以撤消此操作的类,但我一直无法找到解决方案。
请参阅此 jsFiddle 以了解我在说什么:http: //jsfiddle.net/persianturtle/rAYyk/2/
我的问题: 是否有一种简单的方法(<50 行代码)可以在媒体查询中撤消上述代码,以便此导航菜单将桌面视图居中并在平板电脑和手机上正常显示?
如果这不能用纯 CSS 完成,能否逐步解释 jQuery 解决方案如何工作?由于我有 h5bp,我已经链接了 jQuery 1.9.0。