Bootstrap 5 导航栏右对齐项目

bs5*_*pha 51 twitter-bootstrap bootstrap-5

如何将 Bootstrap 5 导航栏项目向右对齐?在 Bootstrap 3 中,它是navbar-right. 在 Bootstrap 4 中,它是ml-auto. 但不适用于 Bootstrap 5。

Zim*_*Zim 81

Bootstrap 5(2021 年更新)

自举5测试版的,左右已被替换的开始结束RTL支持。因此,Bootstrap 5 beta 的保证金实用程序发生了变化:

  • ml-auto=> ms-auto(开始)
  • mr-auto=> me-auto(结束)

另请注意,在 Bootstrap 5 中,left 和 right 的所有用法都已替换为startend ...

  • 毫升-* => 毫秒-*
  • pl-* => ps-*
  • 先生-* => 我-*
  • pr-* => pe-*
  • 文本左 => 文本开始
  • 文本右 => 文本结束
  • 浮动左 => 浮动开始
  • 浮动右 => 浮动结束
  • 边界左 => 边界开始
  • 边界右=> 边界结束
  • 圆形左 => 圆形开始
  • 圆角右 => 圆角末端
  • dropleft => dropstart
  • dropright=> dropend
  • 下拉菜单- -left => 下拉菜单- -start
  • 下拉菜单- -right => 下拉菜单- -end
  • carousel-item-left => carousel-item-start
  • carousel-item-right=> carousel-item-end

Bootstrap 5 alpha(原始答案)

这个问题是针对Bootstrap 5 alpha 提出的,因此ml-auto应该仍然有效。

在 Bootstrap 5 中将导航项向右对齐

  • 作为从 Bootstrap 4 到 Bootstrap 5 的升级指南,这是非常有帮助的。一个人可以对所有这些进行站点范围的查找替换 (2认同)

小智 25

我改mrms和它的工作对我来说,这是最好的解决方案。

<ul class="navbar-nav ms-auto mb-2 mb-lg-0">
Run Code Online (Sandbox Code Playgroud)

  • 我很困惑,ms-auto 意味着与开始对齐(左),但在我的情况下它实际上将项目向右对齐......我想我正在服用疯狂的药丸。 (3认同)
  • @Francisco 如有疑问,请查看引擎盖下的内容。`ms-auto` yes 表示“margin _start_/left auto”,但这意味着“添加 `margin-left: auto !important;`”,这本身就令人困惑,但您可以在此处阅读有关边距的更多信息 https://developer.mozilla .org/en-US/docs/Web/CSS/margin-left#syntax (3认同)
  • 你救了我的一天。 (2认同)

HDP*_*HDP 20

您需要在引导程序 5 中使用ms-auto而不是ml-auto

水平方向敏感的变量,公用事业和混入被重命名为更符合逻辑的名字-startend代替left,并right引导5

  • 更名.left-*.right-*.start-*.end-*
  • 更名.float-left.float-right.float-start.float-end
  • 更名.border-left.border-right.border-start.border-end
  • 更名.rounded-left.rounded-right.rounded-start.rounded-end
  • 更名.ml-*.mr-*.ms-*.me-*
  • 更名.pl-*.pr-*.ps-*.pe-*
  • 更名.text-left.text-right.text-start.text-end

您可以在此处查看更多 bootstrap 5 迁移详细信息:https : //getbootstrap.com/docs/5.0/migration/#sass


oze*_*ray 18

justify-content-end 类发挥了作用。

<div class="collapse navbar-collapse justify-content-end" id="navbarResponsive">
Run Code Online (Sandbox Code Playgroud)


leg*_*acy 9

这个问题已经在这里得到解答

为了获得更多说明,根据Bootstrap 5 文档,一些实用程序已重命名。包括左和右。

左==>开始

右==>结束

所以

ml已更改为ms

mr已经变成了

所以现在:

ml-自动 ==> ms-自动

mr-auto ==> me-auto

你可以在引导文档中看到一点

因此,如果您希望导航栏项目“右”对齐,则必须输入:

 <div class="collapse navbar-collapse" id="navbarScroll">
  <ul class="navbar-nav ms-auto mb-2 mb-lg-0">
    <li class="nav-item">
      <a class="nav-link" href="#">Link</a>
    </li>
  </ul>
</div>
Run Code Online (Sandbox Code Playgroud)


Ahm*_*lao 5

它与您应该使用的 Bootstrap 4 相同ml-auto。这是来自的一个片段。导航栏 Bootstrap 5 官方 这里是Bootstrap 5 的官方主页

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/css/bootstrap.min.css" integrity="sha384-r4NyP46KrjDleawBgD5tp8Y7UzmLA05oM1iAEQ17CSuDqnUK2+k9luXQOfXJCJ4I" crossorigin="anonymous">



<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
  <div class="container-fluid">
    <a class="navbar-brand" href="#">Navbar</a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-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">
      <!-- ml-auto still works just fine-->
      <div class="navbar-nav ml-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>
    </div>
  </div>
</nav>


<!--bootstrap 5 -->
<!-- JavaScript and dependencies -->
<script src=" https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js " integrity=" sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo " crossorigin=" anonymous "></script>
<script src=" https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/js/bootstrap.min.js " integrity=" sha384-oesi62hOLfzrys4LxRF63OJCXdXDipiYWBnvTl9Y9/TRlw5xlKIEHpNyvvDShgf/ " crossorigin=" anonymous "></script>
Run Code Online (Sandbox Code Playgroud)

编辑

问题是bootstrap 5在时问的alpha。但现在我们已经beta出来了,他们确实将命名更改为 margin-start 和 margin-end

将 .ml-* 和 .mr-* 重命名为 .ms-* 和 .me-*


将 .pl-* 和 .pr-* 重命名为 .ps-* 和 .pe-*

所以答案应该是这样的:

<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" crossorigin="anonymous">



<nav class="navbar navbar-dark bg-dark">
  <div class="container-fluid">
    <a class="navbar-brand">Navbar</a>
    <form class="d-flex">
      <input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
      <button class="btn btn-outline-success" type="submit">Search</button>
    </form>
  </div>
</nav>


<!--bootstrap 5 -->
<!-- JavaScript and dependencies -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.bundle.min.js" integrity="sha384-ygbV9kiqUc6oa4msXn9868pTtWMgiQaeYH7/t7LECLbyPA2x65Kgf80OJFdroafW" crossorigin="anonymous"></script>
Run Code Online (Sandbox Code Playgroud)