【问题标题】:How can I center Twitter-Bootstrap 3 navbar links?如何使 Twitter-Bootstrap 3 导航栏链接居中?
【发布时间】:2013-08-08 06:05:21
【问题描述】:

如何将我设置的 jsFiddle 中的按钮居中,以使按钮在导航栏中和整个导航栏中等间距和居中?

http://jsfiddle.net/3GQyq/3/

我尝试了不同的方法,例如

display:inline-block;margin:0 auto; text-align:center;

但我无法让它工作。

如果你能给出一些解释,而不是像我想学习的那样仅仅修复 CSS,那么我就不必再回到这里了。

编辑:

就像它们在这里居中一样^。

【问题讨论】:

    标签: css twitter-bootstrap centering navbar


    【解决方案1】:

    Bootstrap 3 有一个nav-justified 类,可以在nav 上使用。无需额外的 CSS:

    <div class="container">
      <h3 class="text-muted">Project name</h3>
      <ul class="nav nav-justified">
        <li class="active"><a href="#">Home</a></li>
        <li><a href="#">Projects</a></li>
        <li><a href="#">Services</a></li>
        <li><a href="#">Downloads</a></li>
        <li><a href="#">About</a></li>
        <li><a href="#">Contact</a></li>
      </ul>
    </div>
    

    演示:http://bootply.com/72519


    基于 cmets,要使用 navbar-nav 类获得全角居中链接,请使用 flexbox...

    .navbar-center {
        width:100%;
        display: flex;
    }
    .navbar-center>li {
        flex:1 1 auto;
    }
    
    <div class="navbar navbar-default">
        <div class="container">
            <ul class="nav navbar-nav navbar-center text-center">
                <li class="active"><a href="#">Home</a></li>
                <li><a href="#">Link</a></li>
                <li><a href="#">Link</a></li>
                <li><a href="#">More</a></li>
                <li><a href="#">Options</a></li>
            </ul>
        </div>
    </div>
    

    https://www.codeply.com/go/6ZE3obnpuP


    另见
    Bootstrap NavBar with left, center or right aligned items
    Center Navbar in Bootstrap

    【讨论】:

    • 这是一个很好的建议,但是如果你看一下这个小提琴,我会遇到冲突的问题。你有什么建议吗? jsfiddle.net/MgcDU/6582
    • 这里一样,class="nav navbar-nav nav-justified" 手动向左收缩,有什么解决方法吗?
    • 移除 navbar-nav 类。
    • nav-justified 用于药丸和标签,而不是导航栏。 警告:在导航栏上使用此类会破坏导航栏样式。
    • 我专门为navbar-nav更新了答案。
    【解决方案2】:

    添加样式

    .nav{
        text-align: center;
    }
    

    这将使文本以 li 居中。

    Check Fiddle

    这些样式应该足够了。您试图将样式应用于错误的元素。

    // This is being applied by the bootstrap
    // Set it to 25px instead of the default 15px
    .navbar{
        padding : 0 25px;
    }
    
    // Gave a width of 110px for each li
    // as the container is following a fixed width format
    li{
        width:110px;
    }
    

    【讨论】:

    • 请重新检查我编辑过的问题。你错过了我的观点,不是文字,而是按钮本身。
    • 但我没有在小提琴中看到那些按钮
    • @sushhanth 请重新检查我的小提琴,我已经更新了一些东西,让它更清晰一点。 Prehaphs 我描述的东西不正确。我的意思是导航栏中的链接。
    • 所以你希望它们水平放置而不是当前垂直对齐
    • 如您所见,所有按钮都向左对齐,就好像应用了.float:left; 样式一样。我希望按钮在导航栏中居中,这将延伸导航栏的整个宽度。看看我在这个问题上发布的图片。看看他们的导航按钮是如何在导航栏的整个宽度上居中的,而我的按钮都被拉到了左边?
    猜你喜欢
    • 2013-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-02
    • 1970-01-01
    • 2012-08-04
    • 2015-09-17
    • 2013-11-22
    相关资源
    最近更新 更多