html - Bootstrap 4 导航栏/菜单在折叠时保持条目可见

标签 html css bootstrap-4

这是一个类似于this one的问题,但它适用于 Bootstrap 4。

我无法在 BS4 导航栏上添加右对齐条目,这些条目在折叠和未折叠时都保持可见。我花了整整一个下午没有成功。

这是我的目标:

enter image description here

这是我当前的代码(仅在未折叠时有效):

<nav class="navbar navbar-light navbar-expand-xl border-bottom mainmenu sticky-top">
    <a class="navbar-brand text-capitalize text-blur" href="/">
        <img class="mr-1" src="/images/logo/favicon-32x32.png" alt="Logo">
        <span class="">Portami in Pista</span>
    </a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#myTopMenu"
        aria-controls="collapsableTopMen" aria-expanded="false" aria-label="[Menu]">
        <span class="sr-only">[Menu]</span>
        <span class="navbar-toggler-icon" title="[Menu]"/>
    </button>

    <div class="collapse navbar-collapse" id="collapsableTopMen">
        <ul class="navbar-nav mr-auto">
            <li class="nav-item">
                <a class="nav-link" href="/Schools/">
                    <i class="fa fa-motorcycle fa-rotate-315 text-danger" aria-hidden="true"/>
                    <span class="text-blur-danger">PiP Reparto Corse</span>
                </a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="/Tracks/">
                    <i class="fa fa-flag-checkered text-primary" aria-hidden="true"/>
                    <span>Piste</span>
                </a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="/Blog/le-guide-del-giovedi/">
                    <i class="fa fa-mortar-board text-primary" aria-hidden="true"/>
                    <span>Le guide del gioved&#236;</span>
                </a>
            </li>
        </ul>
        <ul class="navbar-nav ml-auto">
            <!- START of section should be always visible -->
            <li class="nav-item dropdown">
                <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownLang" role="button"
               data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                    <i class="famfamfam-flags it" title="Italiano"/>
                    <span class="d-inline d-xl-none">Italiano</span>
                </a>
                <div class="dropdown-menu" aria-labelledby="navbarDropdownLang">
                    <a class="dropdown-item" href="/AbpLocalization/ChangeCulture?cultureName=en&returnUrl=/">
                        <i class="famfamfam-flags gb" aria-hidden="true"/>
                        <span class="">English</span>
                    </a>
                </div>
            </li>
            <!- END of section should be always visible -->

            <li class="nav-item">
                <a class="nav-link" href="/Account/Login"><i class="fa fa-sign-in"/> Log in</a>
            </li>
        </ul>
    </div>
</nav>

最佳答案

由于您使用的是 Bootstrap 4,因此该答案与您的问题更相关:
https://stackoverflow.com/a/41513784/171456(见最后一部分)

您始终希望保持可见的部分需要与任何可折叠部分分开。然后使用 order-* 类根据需要定位元素:

演示:https://codeply.com/p/ylDhhZtpiH

<nav class="navbar navbar-light navbar-expand-xl border-bottom mainmenu sticky-top justify-content-start">
    <a class="navbar-brand text-capitalize text-blur" href="/">
        <img class="mr-1" src="//placehold.it/32" alt="Logo">
        <span class="">Portami in Pista</span>
    </a>
    <button class="navbar-toggler order-2 ml-1" type="button" data-toggle="collapse" data-target=".collapsable" aria-controls="collapsableTopMen" aria-expanded="false" aria-label="[Menu]">
        <span class="sr-only">[Menu]</span>
        <span class="navbar-toggler-icon" title="[Menu]"></span>
    </button>
    <!-- 1st collapse menu -->
    <div class="collapse navbar-collapse collapsable flex-grow-0 flex-xl-grow-1 order-last" id="collapsableTopMen">
        <ul class="navbar-nav mr-auto">
            <li class="nav-item">
                <a class="nav-link" href="/Schools/">
                    <i class="fa fa-motorcycle fa-rotate-315 text-danger" aria-hidden="true"></i>
                    <span class="text-blur-danger">PiP Reparto Corse</span>
                </a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="/Tracks/">
                    <i class="fa fa-flag-checkered text-primary" aria-hidden="true"></i>
                    <span>Piste</span>
                </a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="/Blog/le-guide-del-giovedi/">
                    <i class="fa fa-mortar-board text-primary" aria-hidden="true"></i>
                    <span>Le guide del gioved&#236;</span>
                </a>
            </li>
        </ul>
    </div>
    <!-- always visible portion -->
    <ul class="navbar-nav order-1 order-xl-last ml-auto">
        <li class="nav-item dropdown">
            <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownLang" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                <i class="fas fa-flag it" title="Italiano"></i>
                <span class="d-inline d-xl-none">Italiano</span>
            </a>
            <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdownLang">
                <a class="dropdown-item" href="#">
                    <i class="fas fa-flag-usa gb" aria-hidden="true"></i>
                    <span class="">English</span>
                </a>
            </div>
        </li>
    </ul>
    <!-- 2nd collapse menu -->
    <div class="collapse navbar-collapse collapsable flex-grow-0 order-last">
        <ul class="navbar-nav">
            <li class="nav-item">
                <a class="nav-link" href="/Account/Login"><i class="fa fa-sign-in"></i> Log in</a>
            </li>
        </ul>
    </div>
</nav>

https://codeply.com/p/ylDhhZtpiH

关于html - Bootstrap 4 导航栏/菜单在折叠时保持条目可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60635025/

相关文章:

html - 如何在 Twitter Bootstrap 中以表单形式创建图像按钮?

javascript - 为什么在 Safari 中相同宽度的 Select 和 Input 标签在渲染时会大不相同

javascript - JQuery Isotope - 将边距应用于元素的最佳方法是什么?

javascript - Bootstrap 4 - 折叠动画的速度是多少?

javascript - AngularJS 引导下拉导航栏

html - 关键帧不适用于 Chrome

html - Flexbox:具有大子元素的两列布局 - 适用于 Chrome,但不适用于 Firefox/IE

JQuery 在 Django 中没有响应

javascript - 为什么 require.js 进入 head 标签

css - Bootstrap 导航栏上方的 4 页宽标题栏