将文本对齐Bootstrap Nav Bar的中心

时间:2015-02-28 08:27:11

标签: html css twitter-bootstrap

我想移动链接'使用入门'到导航栏的中间,而不是向左对齐。我该怎么做?

My jsFiddle is here

HTML:

<div class="container">
    <div class="navbar navbar-default">
        <div class="navbar-header">
            <a class="navbar-brand" href="#">Bootstrap 3</a>
        </div>
        <div class="navbar-collapse collapse">
            <ul class="nav navbar-nav navbar-center">
                <li class="dropdown active">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">Getting started <b class="caret"></b></a>
                    <ul class="dropdown-menu">
                        <li><a href="http://getbootstrap.com/getting-started/#download">Download Bootstrap</a></li>
                        <li class="divider"></li>
                        <li class="dropdown-header">Examples</li>
                        <li><a href="http://getbootstrap.com/getting-started/#template">Basic template</a></li>
                        <li><a href="http://getbootstrap.com/examples/starter-template/">Starter template</a></li>
                        <li><a href="http://getbootstrap.com/examples/grid/">Grids</a></li>
                        <li><a href="http://getbootstrap.com/examples/jumbotron/">Jumbotron</a></li>
                        <li><a href="http://getbootstrap.com/examples/navbar/">Navbar</a></li>
                        <li><a href="http://getbootstrap.com/examples/signin/">Sign-in page</a></li>
                        <li><a href="http://getbootstrap.com/examples/sticky-footer/">Sticky footer</a></li>
                        <li><a href="http://getbootstrap.com/examples/offcanvas/">Offcanvas</a></li>
                        <li><a href="http://getbootstrap.com/examples/carousel/">Carousel</a></li>
                        <li><a href="http://getbootstrap.com/examples/theme/">Theme</a></li>                        
                        <li class="divider"></li>
                        <li class="dropdown-header">Compatibility</li>
                        <li><a href="http://getbootstrap.com/getting-started/#migration">Migrating from 2.x to 3.0</a></li>
                        <li><a href="http://getbootstrap.com/getting-started/#browsers">Browser support</a></li>
                        <li><a href="http://getbootstrap.com/getting-started/#third-parties">Third party support</a></li>
                    </ul>
                </li>
            </ul>
            <ul class="nav navbar-nav navbar-right">
                <li class="active"><a href="http://getbootstrap.com/customize">Customize</a></li>
            </ul>
        </div>
    </div>

    <div class="jumbotron">
        <h1>Twitter Bootstrap 3.0</h1>
        <p class="lead">Starter template with CSS and JS included.</p>
        <p><a class="btn btn-lg btn-primary" href="#fork">Fork this fiddle</a></p>
      </div>
</div>

3 个答案:

答案 0 :(得分:2)

您可以将text-align:center添加到包含的父导航栏中,并将要居中的导航栏设置为display:inline-block并删除float:left

.navbar-default{
  text-align:center;
}
.navbar-center{
   display: inline-block;
   float: none; 
}

调整后的Fiddle

答案 1 :(得分:0)

小提琴中定义的css变化

.navbar-default .navbar-brand{
 width: 100%;
 text-align: center;
 }

Please try this demo

答案 2 :(得分:0)

你可以通过多种方式实现这一目标。

解决方案1:

其中一个是给你的.navbar-brand一个width 100%和text-align: center这样:

.navbar-brand{
    width:100%;
    text-align:center;
}

Fiddle

解决方案可行,但有一个缺点,因为品牌名称将占用.navbar上的所有空格,而您无法在其中放置menu

解决方案2:

另一种解决方案是为.navbar-brand提供固定的width。固定的width允许我们使用margin: 0 auto;div.navbar-header居中,而不会占用像 Soltuion one 这样的所有空间。但那还不是全部。您还需要width一个position: absolute; 100%和.navbar-header{ width: 100%; position: absolute; } .navbar-brand{ width:142px; margin:0 auto !important; display:block; } ,以确保菜单项可见如下:

width

Fiddle

此解决方案的优点是,您可以使用与品牌相同的菜单中的菜单,这可以通过解决方案1 ​​进行。

缺点是你必须给你的品牌一个固定的{{1}},这会降低其中内容的灵活性。