如何右对齐 bootstrap 5 导航栏中的最后一个 LI

How to right align the last LI in bootstrap 5 navbar

Bootstrap5 站点上的示例仅显示右对齐的非 LI 导航项目。

我有 4 个菜单项,其中 3 个应该左对齐,而最后一个应该推到右边。

<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <div class="container-fluid">
    <a class="navbar-brand" href="#">Navbar</a>
    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
      <div class="navbar-nav">
        <a class="nav-link active" aria-current="page" href="#">Home</a>
        <a class="nav-link" href="#">Features</a>
        <a class="nav-link" href="#">Pricing</a>
        <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
      </div>
    </div>
  </div>
</nav>

您可以使用左侧 div 的 类 .me-auto 或右侧 div 的 .ms-auto 来实现此目的。这会在两个不同的导航元素之间添加边距。这是一个简短的演示,但您可以在 navbar-documentation.

中看到一些带有搜索栏的其他示例

将 navbar-expand-lg 更改为仅 navbar-expand,这样示例就很容易看到,而无需翻到整页。

<!doctype html>
<html lang="en">

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Bootstrap navbar demo</title>
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-0evHe/X+R7YkIZDRvuzKMRqM+OrBnVFBL6DOitfPri4tjfHxaWutUpFmBp4vmVor" crossorigin="anonymous">
</head>

<body>
  <nav class="navbar navbar-expand navbar-light bg-light">
    <div class="container-fluid">
      <a class="navbar-brand" href="#">Navbar</a>
      <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
      <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
        <!-- div class="navbar-nav"> -->
        <!-- use me-auto here... -->
        <div class="navbar-nav me-auto">
          <a class="nav-link active" aria-current="page" href="#">Home</a>
          <a class="nav-link" href="#">Features</a>
          <a class="nav-link" href="#">Pricing</a>
          <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
        </div>
        <!-- ...or use ms-auto here -->
        <!-- <div class="navbar-nav ms-auto"> -->
        <div class="navbar-nav">
          <a class="nav-link" href="#">Settings</a>
          <a class="nav-link" href="#">Account</a>
          <a class="nav-link" href="#"><span class="btn btn-outline-danger btn-sm">Logout</span></a>
        </div>
      </div>
    </div>
  </nav>

  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0-beta1/dist/js/bootstrap.bundle.min.js" integrity="sha384-pprn3073KE6tl6bjs2QrFaJGz5/SUsLqktiwsUTF55Jfv3qYSDhgCecCxMW52nD2" crossorigin="anonymous"></script>
</body>

</html>

请注意,这些更改不会对移动版导航产生任何视觉效果。此外,如果您正在使用例如用于导航的 div 或列表 (ul/ol) 与 bootstrap 没有任何视觉差异。但是,它可能会对 SEO 和可访问性产生影响。