Bootstrap - 右侧浮动导航栏按钮

时间:2014-02-04 05:30:03

标签: html css css-float twitter-bootstrap-3

我正在使用引导程序导航栏,但我想将其中一个按钮向右浮动而不是向左浮动。这是HTML:

    <div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
  <div class="container">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand" href="#">Project name</a>
    </div>
    <div class="collapse navbar-collapse">
      <ul class="nav navbar-nav">
        <li class="active"><a href="#">Home</a></li>
        <li><a href="#about">About</a></li>
        <li><a href="#contact" class="navbar-nav pull-right">Contact</a></li>
      </ul>
    </div>
  </div>
</div>

我尝试过使用nav navbar-nav navbar-rightfloat:rightpull-right。我真的不知道还能做些什么。任何帮助表示赞赏。

JSFiddle

4 个答案:

答案 0 :(得分:44)

您需要使用以下标记。如果要将任何菜单项浮动到右侧,请为其创建一个单独的<ul class="nav navbar-nav"> navbar-right类。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<html>

<head>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
  <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
</head>

<body>
  <div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
    <div class="container">
      <div class="navbar-header">
        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
        <a class="navbar-brand" href="#">Project name</a>
      </div>
      <div class="collapse navbar-collapse">
        <ul class="nav navbar-nav">
          <li class="active"><a href="#">Home</a></li>
          <li><a href="#about">About</a></li>

        </ul>
        <ul class="nav navbar-nav navbar-right">
          <li><a href="#contact">Contact</a></li>
        </ul>
      </div>
    </div>
  </div>
</body>

</html>

答案 1 :(得分:18)

仅为该列表项创建单独的ul.nav并将ul向右浮动。

jsFiddle

答案 2 :(得分:8)

在bootstrap 4中使用:

<ul class="nav navbar-nav ml-auto">

这会将导航栏推到右侧。使用mr-auto将其向左推,这是默认行为。

答案 3 :(得分:0)

引导程序 5(2021 年更新)

在 Bootstrap 5 中(请参阅此问题),ml-auto 已替换为 ms-auto 以表示开始而不是 left。由于 Navbar 仍然基于 flexbox,因此仍然使用自动边距或 flexbox 实用程序类来对齐 Navbar 内容。