折叠的导航栏将不可折叠的物品从导航栏移开

时间:2018-12-09 18:25:03

标签: css twitter-bootstrap bootstrap-4 navbar

我有这个导航栏:

enter image description here

如果屏幕变小,则购物车大军不应该折叠的位置:

enter image description here

到目前为止,很好...

但是,当我单击切换按钮时,我的大量购物车也会随着菜单向下移动,如下所示:

enter image description here

但是我希望我的大量购物车也能保持起来,就像这张图片(现在绘制)中一样:

enter image description here

我已经看了几个小时,但仍然无法实现这种行为。这是fiddle

代码

<nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top">
    <a class="navbar-brand" href="#">English Park Cuisine</a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNavDropdown">
        <ul class="navbar-nav ml-auto">
            <li class="nav-item active">
                <a class="nav-link" href="index.php">Acasa<span class="sr-only">(current)</span></a>
            </li>
            <li class="nav-item dropdown">
                <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                Meniu
                </a>
                <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
                    <a class="dropdown-item" href="meniu.php">Pizza</a>
                    <a class="dropdown-item" href="#">Paste</a>
                    <a class="dropdown-item" href="#">Supe</a>
                    <a class="dropdown-item" href="#">Ciorbe</a>
                    <a class="dropdown-item" href="#">Desert</a>
                </div>
            </li>
            <li class="nav-item dropdown">
                <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Contact</a>
                <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
                    <p class="dropdown-item">0746117702</p>
                    <p class="dropdown-item">0742112452</p>
                    <p class="dropdown-item">0735212352</p>
                </div>
            </li>
        </ul>
    </div>

    <div class="d-flex order-lg-1 ml-auto pr-2">
        <a href="#" class="navbar-text"><i class="fa fa-shopping-cart fa-lg" style="color: white;"></i></a>
        <a href="#" class="navbar-text"><i class="fa fa-shopping-cart fa-lg" style="color: white;"></i></a>
        <a href="#" class="navbar-text"><i class="fa fa-shopping-cart fa-lg" style="color: white;"></i></a>           
    </div>

</nav>

该问题与this one非常相似,但是,您不会在此处看到此行为,因为导航栏的顺序不同,这就是使该问题与众不同的原因。

2 个答案:

答案 0 :(得分:1)

您可以使用order-* classes来解决这个问题。只需将要保留在顶部导航栏上的项的顺序value保持低于切换折叠模式的button的值即可。在下一个示例中:

(1)(导航栏未折叠)(lg屏幕),购物车大军将拥有order-4并走到最后。

(2):当导航栏合拢时,购物车大军将有order-1,切换折叠按钮将有order-2。因此,合拢按钮不会影响它。

<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css" integrity="sha384-B4dIYHKNBt8Bc12p+WXckhzcICo0wtJAoU8YZTY5qE0Id1GSseTk6S+L3BlXeVIU" crossorigin="anonymous">

<nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top">

  <a class="navbar-brand order-0" href="#">English Park Cuisine</a>

  <div class="order-lg-4 order-1 ml-auto mr-2">
    <a href="#" class="navbar-text">
      <i class="fa fa-shopping-cart fa-lg" style="color: white;"></i>
    </a>
    <a href="#" class="navbar-text">
      <i class="fa fa-shopping-cart fa-lg" style="color: white;"></i>
    </a>
    <a href="#" class="navbar-text">
      <i class="fa fa-shopping-cart fa-lg" style="color: white;"></i>
    </a>
  </div>

  <button class="navbar-toggler order-2" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>

  <div class="collapse navbar-collapse order-3" id="navbarNavDropdown">
    <ul class="navbar-nav ml-auto">
      <li class="nav-item active">
        <a class="nav-link" href="index.php">
          Acasa<span class="sr-only">(current)</span>
        </a>
      </li>
      <li class="nav-item dropdown">
        <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
          Meniu
        </a>
        <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
          <a class="dropdown-item" href="meniu.php">Pizza</a>
          <a class="dropdown-item" href="#">Paste</a>
          <a class="dropdown-item" href="#">Supe</a>
          <a class="dropdown-item" href="#">Ciorbe</a>
          <a class="dropdown-item" href="#">Desert</a>
        </div>
      </li>
      <li class="nav-item dropdown">
        <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Contact</a>
        <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
          <p class="dropdown-item">0746117702</p>
          <p class="dropdown-item">0742112452</p>
          <p class="dropdown-item">0735212352</p>
        </div>
      </li>
    </ul>
  </div>

</nav>

答案 1 :(得分:1)

尝试一下:

<nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top">
    <a class="navbar-brand" href="#">English Park Cuisine</a>

    <div class="d-flex order-lg-1 ml-auto pr-2" style="margin-right:20px;">
        <a href="#" class="navbar-text"><i class="fa fa-shopping-cart fa-lg" style="color: white;"></i></a>
        <a href="#" class="navbar-text"><i class="fa fa-shopping-cart fa-lg" style="color: white;"></i></a>
        <a href="#" class="navbar-text"><i class="fa fa-shopping-cart fa-lg" style="color: white;"></i></a>

    </div> 
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNavDropdown">
        <ul class="navbar-nav ml-auto">
            <li class="nav-item active">
                <a class="nav-link" href="index.php">Acasa<span class="sr-only">(current)</span></a>
            </li>
            <li class="nav-item dropdown">
                <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                Meniu
            </a>
                <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
                    <a class="dropdown-item" href="meniu.php">Pizza</a>
                    <a class="dropdown-item" href="#">Paste</a>
                    <a class="dropdown-item" href="#">Supe</a>
                    <a class="dropdown-item" href="#">Ciorbe</a>
                    <a class="dropdown-item" href="#">Desert</a>
                </div>
            </li>
            <li class="nav-item dropdown">
                <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Contact</a>
                <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
                    <p class="dropdown-item">0746117702</p>
                    <p class="dropdown-item">0742112452</p>
                    <p class="dropdown-item">0735212352</p>
                </div>
            </li>
        </ul>
    </div>



</nav>