使Bootstrap Nav粘性上衣

时间:2019-07-29 02:08:10

标签: html css bootstrap-4 navbar nav

我正在使用Bootstrap和导航栏来建立一个网站,使其位于顶部,但是使用类sticky-top似乎没有任何作用。

以下是导航的代码:

<div class="row">
  <div class="col-md-12">
    <ul class="nav justify-content-center sticky-top">
      <li class="nav-item">
        <a class="nav-link active" href="#">Active</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">Link</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">Link</a>
      </li>
    </ul>
  </div>
</div>

希望有人可以提供帮助!

1 个答案:

答案 0 :(得分:1)

您需要将sticky-top放置在导航栏的容器中,如果row是导航栏,则需要将其放置在其中而不是其子项。

/* For displaying */
body {
  height: 300vh;
  background-image: linear-gradient(to bottom, white, black);
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">

<!-- You need to move sticky-top to the outer element of navbar, which is here -->
<div class="row sticky-top">
  <div class="col-md-12">
    <ul class="nav justify-content-center">
      <li class="nav-item">
        <a class="nav-link active" href="#">Active</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">Link</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#">Link</a>
      </li>
    </ul>
  </div>
</div>