【问题标题】:Bootstrap 4 collapse problem with custom height navbar自定义高度导航栏的 Bootstrap 4 崩溃问题
【发布时间】:2019-12-10 11:42:37
【问题描述】:

我在 Bootstrap 4 中使用带有品牌徽标图像 (150px x 33px) 的导航栏。

我需要将导航栏的高度增加到 80 像素。我使用min-height: 80px; 来实现这一点。


<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  <title>Title</title>
  <link href="../system/bootstrap/dist/css/bootstrap.css" rel="stylesheet">

  <style>
    .navbar {
      min-height: 80px;
      background-color: #FFFFFF;
      border-bottom-color: #D8D8DD;
      border-bottom-style: solid;
      border-bottom-width: 1px;
    }
  </style>
</head>

<body>
  <nav class="navbar navbar-expand-lg fixed-top navbar-light">

    <a class="navbar-brand" href="#"><img src="logo-placeholder-150px-33px.png" ></a>

    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navigation01">
      <span class="navbar-toggler-icon"></span>
    </button>

    <div class="collapse navbar-collapse" id="navigation01">
      <ul class="navbar-nav">
        <li class="nav-item"><a class="nav-link active " href="#">Item 1</a></li>
        <li class="nav-item"><a class="nav-link" href="#">Item 2</a></li>
        <li class="nav-item"><a class="nav-link" href="#">Item 3</a></li>
      </ul>
    </div>
  </nav>

<script src="../system/jquery/dist/jquery.js"></script>
<script src="../system/popper.js/dist/popper.js"></script>
<script src="../system/bootstrap/dist/js/bootstrap.js"></script>

</body>
</html>

在较小的视口上,菜单正确折叠,汉堡图标变得可见。

但是,当我通过单击汉堡包图标打开菜单时,徽标的 Y 位置和汉堡包图标会发生变化。它们略微向顶部移动。

如何解决这个问题?

【问题讨论】:

    标签: html css twitter-bootstrap bootstrap-4


    【解决方案1】:

    使用填充为导航栏指定高度而不是最小高度。它会解决你的问题。增加导航栏类的填充。

    .navbar {
        padding: .6rem 1rem;
        background-color: #FFFFFF;
        border-bottom-color: #D8D8DD;
        border-bottom-style: solid;
        border-bottom-width: 1px;
    }
    

    【讨论】:

      【解决方案2】:

      您想改为更改 navbar-brand min-height,并从 navbar 中删除填充 (py-0) 以获得 80px 的确切最小高度...

      <nav class="navbar navbar-expand-lg fixed-top navbar-light py-0">
          <a class="navbar-brand align-items-center d-flex" href="#"><img src="//placehold.it/150x33"></a>
          <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navigation01">
              <span class="navbar-toggler-icon"></span>
          </button>
          <div class="collapse navbar-collapse" id="navigation01">
              <ul class="navbar-nav">
                  <li class="nav-item"><a class="nav-link active " href="#">Item 1</a></li>
                  <li class="nav-item"><a class="nav-link" href="#">Item 2</a></li>
                  <li class="nav-item"><a class="nav-link" href="#">Item 3</a></li>
              </ul>
          </div>
      </nav>
      

      Demo

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-11-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-10
        • 2023-04-07
        • 2018-02-02
        • 2022-07-18
        相关资源
        最近更新 更多