我想要一个引导导航栏,其中一些导航项左对齐,一些是右对齐,有些则以它们之间的剩余空间为中心。
<div class="navbar">
<div class="navbar-inner">
<ul class="nav">
<li><a>Left</a></li>
</ul>
<ul class="nav nav-center">
<li><a>Center 1</a></li>
<li><a>Center 2</a></li>
</ul>
<ul class="nav pull-right">
<li><a>Right</a></li>
</ul>
</div>
</div>
这个jsfiddle http://jsfiddle.net/b7whs/显示了这一点 - 我希望将中心1和中心2导航项放在一起,以导航栏为中心。这可能吗?
关于如何做到这一点,这里有很多建议;他们都没有为我工作。这甚至可能吗?
在我的情况下,左边和右边的内容总是大小相同,所以我觉得它应该是可行的。
答案 0 :(得分:18)
你只需要几种风格来获得我认为你想要的行为。看起来你正在使用display:inline-block
路线来中心元素,所以我将继续这种方法。对于现有样式,添加/修改定义以包含这些样式:
.nav.nav-center {
margin:0;
float:none;
}
.navbar-inner{
text-align:center;
}
这样,两个选项应该移动到导航栏的确切中心。这是一个JSFiddle example来向您展示这会是什么样子。我希望这就是你要找的!如果没有,请告诉我,我会很乐意进一步提供帮助。
答案 1 :(得分:2)
今天我自己找到了解决方案。
只需将CSS添加为:
/* center the navbar*/
.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;
}
并将中心类添加到导航栏中,就像这样
<div class="navbar navbar-inverse navbar-fixed-top center">
<div class="navbar-inner">
<div class="container center">
----
</div>
</div>
</div>
答案 2 :(得分:0)
在引导程序li
中实际使用此css,并且ul
向左浮动
http://jsfiddle.net/b7whs/4/
@import url('http://twitter.github.com/bootstrap/assets/css/bootstrap.css');
.container {
margin-top: 10px;
}
.nav.nav-center {
display: inline-block;
left: 0;
right: 0;
text-align:center;width:70%;
}
.nav.nav-center li,.nav.nav-center li a{display:inline;float:none;line-height:40px;}
答案 3 :(得分:0)
添加此代码
<div class="col-lg-4 col-lg-offset-5 col-xs-2 col-xs-offset-4">
<ul class=" nav navbar-nav ">
<li><a href="#">products</a></li>
</ul>
</div>