代码之家  ›  专栏  ›  技术社区  ›  Caverman

在引导4和Flexbox不工作的情况下定位导航栏按钮?

  •  2
  • Caverman  · 技术社区  · 7 年前

    我的手仍在Flexbox中,但我在尝试使用导航条时遇到了问题。我要找的是把网站的标题放在最左边,然后把按钮放在最右边。

    我尝试了一些不同的组合与flexbox,但未能得到正确的。这是我使用的最后一个代码组合,我认为它应该是这样工作的,但我必须错过一些东西。

    space-between 它应该把他们左右分开。我甚至设置了 flex-grow:1 试图让它拉伸视口的宽度,但它不起作用。

    .nav__container {
        display: flex;
        justify-content: space-between;
    
        &__title {
            flex-grow: 1;
        }
    
        &__buttons {
            flex-grow: 1;
        }
    }
    
    
    
    <nav class="navbar navbar-expand-md navbar-dark bg-primary navbar-static-top py-0 ">
        <div class="nav__container">
            <div class="nav__title">
                <a class="navbar-brand" href="@Url.Action("Index","Home")">Job Transfers</a>
            </div>
    
            <div class="nav__buttons">
                <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
                    <span class="navbar-toggler-icon"></span>
                </button>
    
                <div class="collapse navbar-collapse" id="navbarCollapse">
                    <ul class="navbar-nav ml-auto">
                        <li class="nav-item">
                            <a class="nav-link" href="@Url.Action("Index","Home")">My Transfer Requests</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" href="@Url.Action("ViewTransferList","Transfer")">View Transfer Lists</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" href="@Url.Action("BidRequests","Bid")">My Bid Requests</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" href="@Url.Action("BidList","Bid")">Bid Postings</a>
                        </li>
                        @if ((bool)Session["IsAdmin"])
                        {
                            <li class="nav-item dropdown">
                                <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                                    Admin
                                </a>
                                <div class="dropdown-menu" aria-labelledby="navbarDropdown">
                                    <a class="dropdown-item" href="@Url.Action("ViewBidList","Bid")">Employee Bids</a>
                                    <a class="dropdown-item" href="@Url.Action("ViewRequestHistory","Transfer")">Request History</a>
                                    <a class="dropdown-item" href="@Url.Action("ViewRecallRights","Transfer")">Recall Rights</a>
                                </div>
                            </li>
                        }
    
                    </ul>
                </div>
            </div>
        </div>
    </nav>
    

    enter image description here

    2 回复  |  直到 7 年前
        1
  •  3
  •   Carol Skelly    7 年前

    只需添加 w-100 d-flex 对于 display:flex ml-auto 使按钮/链接保持在右侧。它们也是 other flexbox utils .

    <nav class="navbar navbar-expand-md navbar-dark bg-primary navbar-static-top py-0 ">
        <div class="nav__container w-100">
            <div class="nav__title">
                <a class="navbar-brand" href="">Job Transfers</a>
            </div>
            <div class="nav__buttons ml-auto">
                <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
                    <span class="navbar-toggler-icon"></span>
                </button>
                <div class="collapse navbar-collapse" id="navbarCollapse">
                    <ul class="navbar-nav ml-auto">
                        <li class="nav-item">
                            <a class="nav-link" href="">My Transfer Requests</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" href="">View Transfer Lists</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" href="">My Bid Requests</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" href="">Bid Postings</a>
                        </li>
    
                        <li class="nav-item dropdown">
                            <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                                    Admin
                                </a>
                            <div class="dropdown-menu" aria-labelledby="navbarDropdown">
                                <a class="dropdown-item" href="">Employee Bids</a>
                                <a class="dropdown-item" href="">Request History</a>
                                <a class="dropdown-item" href="">Recall Rights</a>
                            </div>
                        </li>
    
                    </ul>
                </div>
            </div>
        </div>
    </nav>
    

    https://www.codeply.com/go/E2GeQvBUID

    另请参见: Bootstrap NavBar with left, center or right aligned items

        2
  •  1
  •   kukkuz    7 年前

    width: 100% nav__container 全幅的 容器-见下面的演示:

    .nav__container {
      display: flex;
      justify-content: space-between;
      width: 100%;
    }
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css">
    <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
    
    <nav class="navbar navbar-expand-md navbar-dark bg-primary navbar-static-top py-0 ">
        <div class="nav__container">
            <div class="nav__title">
                <a class="navbar-brand" href="@Url.Action("Index","Home")">Job Transfers</a>
            </div>
    
            <div class="nav__buttons">
                <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
                    <span class="navbar-toggler-icon"></span>
                </button>
    
                <div class="collapse navbar-collapse" id="navbarCollapse">
                    <ul class="navbar-nav ml-auto">
                        <li class="nav-item">
                            <a class="nav-link" href="@Url.Action("Index","Home")">My Transfer Requests</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" href="@Url.Action("ViewTransferList","Transfer")">View Transfer Lists</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" href="@Url.Action("BidRequests","Bid")">My Bid Requests</a>
                        </li>
                        <li class="nav-item">
                            <a class="nav-link" href="@Url.Action("BidList","Bid")">Bid Postings</a>
                        </li>
                        
                            <li class="nav-item dropdown">
                                <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                                    Admin
                                </a>
                                <div class="dropdown-menu" aria-labelledby="navbarDropdown">
                                    <a class="dropdown-item" href="@Url.Action("ViewBidList","Bid")">Employee Bids</a>
                                    <a class="dropdown-item" href="@Url.Action("ViewRequestHistory","Transfer")">Request History</a>
                                    <a class="dropdown-item" href="@Url.Action("ViewRecallRights","Transfer")">Recall Rights</a>
                                </div>
                            </li>
                        
    
                    </ul>
                </div>
            </div>
        </div>
    </nav>