twitter-bootstrap - Bootstrap 4 导航栏即使在切换时也将部分保持在右侧

标签 twitter-bootstrap navigation bootstrap-4 navbar

即使切换开关已展开,我也尝试使“登录部分”保留在右上角。我尝试过 float 该部分,但没有成功。

Before Expanding

After Expanding

这是我的代码:

<nav class="navbar navbar-expand-lg bg-dark navbar-dark fixed-top">
        <div class="container">
            <div class="navbar-header">
                <button class="navbar-toggler"
                        type="button"
                        data-toggle="collapse"
                        data-target="#mymenu">
                    <span class="sr-only">toggle navigation</span>
                    <span class="navbar-toggler-icon"></span>
                </button>
                <a href="#" class="navbar-brand">App</a>

            </div>
            <div class="collapse navbar-collapse" id="mymenu"> 
                <!-- nav body -->
                <ul class="nav navbar-nav mr-auto">
                    <li class="active nav-item"><a class="nav-link" href="index.html">Home</a></li>
                    <li class="nav-item"><a class="nav-link" href="#">Item 1</a></li>
                    <li class="nav-item"><a class="nav-link" href="#">Item 2</a></li>
                    <li class="nav-item dropdown">
                        <a  class="nav-link dropdown-toggle"
                           data-toggle="dropdown" role="button"
                           href="#">Item 3
                        </a>
                        <ul class="dropdown-menu">
                            <li><a class="dropdown-item" href="#">Item 3.1</a></li>
                            <li><a class="dropdown-item" href="#">Item 3.2</a></li>
                            <li><a class="dropdown-item" href="#">Item 3.3</a></li>
                        </ul>
                    </li>
                </ul>
                <!-------------------Search---------------------->
                <form class="form-inline my-2 my-lg-0 position-relative">
                    <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search">
                    <button class="btn btn-outline-light my-2 my-sm-0" type="submit">Search</button>
                </form>


            </div>
            <!--------------------User---------------------->
            <div class="ml-lg-5">
                <a class="navbar-brand" href="#">Log In</a>
            </div>
        </div>
    </nav>

感谢您考虑我的请求。

最佳答案

您可以使用弹性框 ordering classes调整“登录”div 的位置。例如,将其放置在标记中的 navbar-collapse 之前,然后使用 order-lg-last order-0 将其放置在较大屏幕上的最后(第三个),然后当移动导航栏切换时,小屏幕中的自然顺序(第二)。

https://www.codeply.com/go/7Mz5XkMckc

<nav class="navbar navbar-expand-lg bg-dark navbar-dark fixed-top">
    <div class="container">
        <div class="navbar-header">
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#mymenu">
                <span class="sr-only">toggle navigation</span>
                <span class="navbar-toggler-icon"></span>
            </button>
            <a href="#" class="navbar-brand">App</a>
        </div>
        <div class="ml-lg-5 order-lg-last order-0">
            <a class="navbar-brand" href="#">Log In</a>
        </div>
        <div class="collapse navbar-collapse" id="mymenu"> 
            <ul class="nav navbar-nav mr-auto">
                <li class="active nav-item"><a class="nav-link" href="index.html">Home</a></li>
                <li class="nav-item"><a class="nav-link" href="#">Item 1</a></li>
                <li class="nav-item"><a class="nav-link" href="#">Item 2</a></li>
                <li class="nav-item dropdown">
                    <a class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" href="#">Item 3
                    </a>
                    <ul class="dropdown-menu">
                        <li><a class="dropdown-item" href="#">Item 3.1</a></li>
                        <li><a class="dropdown-item" href="#">Item 3.2</a></li>
                        <li><a class="dropdown-item" href="#">Item 3.3</a></li>
                    </ul>
                </li>
            </ul>
            <form class="form-inline my-2 my-lg-0 position-relative">
                <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search">
                <button class="btn btn-outline-light my-2 my-sm-0" type="submit">Search</button>
            </form>
        </div>
    </div>
</nav>

关于twitter-bootstrap - Bootstrap 4 导航栏即使在切换时也将部分保持在右侧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50099647/

相关文章:

html - 如何在移动设备的正确位置保留第二个导航栏?

html - 带有下拉菜单的 CSS 错误

css - 如何调整下拉菜单的位置?

css - 我如何在 Angular 6 元素中使用 bootstrap4 弹出窗口和模式

html - 如何去除bootstrap 4按钮点击效果

html - Bootstrap Card Grid 的问题

html - 多列无序列表

javascript - Bootstrap Typeahead 只显示第一个字母

Ember.js 的 CSS 继承问题

jquery - 将转换与 li 一起使用时的奇怪行为