簡體   English   中英

通過 Bootstrap 更改導航欄中切換按鈕的 position

[英]Changing the position of toggle button in navbar made through Bootstrap

我使用 Bootstrap 制作了一個導航欄。 此處導航欄的切換按鈕始終與導航欄的右側對齊。 我的問題是為什么它與它的權利對齊? 是什么讓切換按鈕保留在導航欄的右側。 我們也沒有用於按鈕的 ml-auto class,也沒有位於品牌和按鈕之間的自動長度元素。 那么 class 的哪個屬性應用於此按鈕以使其相對於導航欄右對齊?

從 ul 標簽中刪除 ml-auto class 時,切換按鈕仍與導航欄的右側對齊。

請告訴我有關財產和負責此的 class 的信息。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Bootstrap Installation</title>
        <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">
        <link rel="stylesheet" href="style2.css">
        <link rel="stylesheet" href="style1.css">
    </head>
    <body>
        <!-- <div class="green blue text-white">Hey</div> -->
        <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="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
            <div class="collapse navbar-collapse" id="navbarSupportedContent">
                <ul class="navbar-nav ml-auto">
                    <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="#">Link</a>
                    </li>
                </ul>
            </div>
            
        </nav>
        <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>
    </body>
</html>

Class .navbar具有將按鈕向右對齊的屬性:

display: flex;
justify-content: space-between;

space-between使元素之間具有相等的空間。 .navbar內只有兩個元素,因此右側有一個空間對齊按鈕。

更多信息: https://www.w3schools.com/cssref/css3_pr_justify-content.asp

從其版本 4 開始的引導程序開始使用flexbox 並且許多引導組件利用 flexbox 屬性。

navbar就是這樣一個組件。 導航欄有display:flex; justify-content:space-between CSS 默認應用,這在大屏幕上會發生變化。 這就是為什么切換按鈕在較小的屏幕上保持在右側的原因。

在大屏幕上,當沒有切換按鈕時。 屬性更改並變為justify-content:flex-start

來自 Bootstrap 網站的圖片:

導航欄-默認屬性

"navbar-brand"是導致您的切換器顯示在右側的數據屬性。 此屬性在HTML中的位置控制着切換器在頁面上的位置。

這是來自Bootstraps 官方文檔的解釋:

默認情況下,導航欄切換器是左對齊的,但如果它們跟隨像 a.navbar-brand 這樣的兄弟元素,它們將自動對齊到最右邊。 反轉標記將反轉切換器的位置。

因此,請先將切換器toggler放在首位,然后將navbar-brand class放在其后,以將切換器顯示到左側。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM