将navbar-brand和nav-items放在Bootstrap 4导航栏中的不同行[重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我想将navbar-brand和nav-items定位在2个不同的行上。

第一行的导航栏品牌和第二行的导航栏品牌。

当前代码:

<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <a class="navbar-brand" href="#">Navbar</a>
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>
  <div class="collapse navbar-collapse" id="navbarNav">
    <ul class="navbar-nav">
      <li class="nav-item active">
        <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">Features</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">Pricing</a>
      </li>
      <li class="nav-item">
        <a class="nav-link disabled" href="#">Disabled</a>
      </li>
    </ul>
  </div>
</nav>
javascript jquery html css bootstrap-4
1个回答
1
投票

要达到预期效果,请执行以下操作:

  1. flex-column添加到导航栏,如下面的代码段所示。 (这会将导航栏变成一个弹性列,在这种情况下可以实现所需的堆叠行为。)
  2. 如果您不希望项目居中并希望它们左对齐,那么也要将align-items-start类添加到其中。
  3. 要将navbar-brand与项目对齐(在本例中),请将ml-2类(margin-left:2个单位)添加到navbar-brand。
  4. 为了确保在折叠导航栏时事物“正常”(=以通常的方式),您需要从上面修改2个类。因此,如果您在下面的示例中有navbar-expand-lg,则需要将flex-column更改为flex-lg-column以确保仅在屏幕较大(lg)或更大时才切换到flex-column。然后将ml-2类更改为ml-lg-2,以确保navbar-brand上的左边距仅针对较大屏幕进行修改,并设置为较小屏幕的默认值。

点击下面的“运行代码段”并展开到整页:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">

<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>

<nav class="navbar flex-lg-column align-items-start navbar-expand-lg navbar-light bg-light">
    <a class="navbar-brand ml-lg-2" href="#">Navbar</a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNav">
        <ul class="navbar-nav">
            <li class="nav-item active">
                <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Features</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Pricing</a>
            </li>
            <li class="nav-item">
                <a class="nav-link disabled" href="#">Disabled</a>
            </li>
        </ul>
    </div>
</nav>
© www.soinside.com 2019 - 2024. All rights reserved.