Bootstrap:居中一些导航栏项目

时间:2013-07-24 03:51:40

标签: css twitter-bootstrap

我想要一个引导导航栏,其中一些导航项左对齐,一些是右对齐,有些则以它们之间的剩余空间为中心。

<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导航项放在一起,以导航栏为中心。这可能吗?

关于如何做到这一点,这里有很多建议;他们都没有为我工作。这甚至可能吗?

在我的情况下,左边和右边的内容总是大小相同,所以我觉得它应该是可行的。

4 个答案:

答案 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>