【问题标题】:Bootstrap 5 mobile Dropdown not sliding while clickingBootstrap 5 mobile Dropdown在单击时不滑动
【发布时间】:2021-06-09 13:30:45
【问题描述】:

开始之前需要了解的几件事:-

  1. 我正在使用 Django (python)
  2. 我正在使用 引导程序
  3. 显然我正在使用 htmlcss

我做了什么(按顺序,出现错误之前的时间):

  1. 我从 bootstrap navbar docs 复制了 navbar 模板
  2. 我按以下顺序从 django 的静态目录中链接了我自己的 自定义 css 和 js 文件:-

Javascript 文件

(从 Bootstrap 复制,所以不要介意 cmets):)
<!-- Optional JavaScript; choose one of the two! -->

    <!-- Option 1: Bootstrap Bundle with Popper -->
    <script src="{% static '/js/script.js' %}" type="text/javascript"></script>
    <script
      src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/js/bootstrap.bundle.min.js"
      integrity="sha384-b5kHyXgcpbZJO/tY9Ul7kGkf1S0CWuKcCD38l8YkeH8z8QjE0GmW1gYU5S9FOnJ0"
      crossorigin="anonymous"
    ></script>

CSS 文件

<link rel="stylesheet" href="{% static 'css/styles.css'%}" />
<!-- Bootstrap CSS -->
<link
  href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css"
  rel="stylesheet"
  integrity="sha384-BmbxuPwQa2lc/FVzBcNJ7UAyJxM6wuqIj61tLrc4wSX0szH/Ev+nYRRuWlolflfl"
  crossorigin="anonymous"
/>

主 html 文件中的代码

{%load static%}
<!DOCTYPE html>
<html lang="en">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />

    <link rel="stylesheet" href="{% static 'css/styles.css'%}" />
    <!-- Bootstrap CSS -->
    <link
      href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css"
      rel="stylesheet"
      integrity="sha384-BmbxuPwQa2lc/FVzBcNJ7UAyJxM6wuqIj61tLrc4wSX0szH/Ev+nYRRuWlolflfl"
      crossorigin="anonymous"
    />

    <title>{%block title%} {%endblock %}</title>
  </head>
  <body>
    <nav class="navbar navbar-expand-lg navbar-dark bg-dark">
      <div class="container-fluid">
        <a class="navbar-brand" href="#">
          <img
            src="{% static '/img/Socklet-logos.jpeg' %}"
            alt="error in loading static files, may encounter bad design"
            id="brand-logo"
            class="float-start"
          />
          <h1 id="brand">{%block brand%}{%endblock%}</h1></a
        >
        <button
          class="navbar-toggler"
          type="button"
          data-bs-toggle="collapse"
          data-bs-target="#navbarSupportedContent"
          aria-controls="navbarSupportedContent"
          aria-expanded="false"
          aria-label="Toggle navigation"
        >
          <span class="navbar-toggler-icon"></span>
        </button>
        <div
          class="collapse navbar-collapse"
          id="navbarSupportedContent navbar"
        >
          <ul class="navbar-nav me-auto mb-2 mb-lg-0" id="navigation-bar">
            <li class="nav-item" id="nav">
              <a
                class="nav-link active"
                aria-current="page"
                href="#"
                id="nav-link"
              >
                <svg
                  xmlns="http://www.w3.org/2000/svg"
                  width="16"
                  height="16"
                  fill="currentColor"
                  class="bi bi-house-door"
                  viewBox="0 0 16 16"
                  class="nav-icon"
                >
                  <path
                    d="M8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4.5a.5.5 0 0 0 .5-.5v-4h2v4a.5.5 0 0 0 .5.5H14a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146zM2.5 14V7.707l5.5-5.5 5.5 5.5V14H10v-4a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v4H2.5z"
                  />
                </svg>
                Home</a
              >
            </li>
            <hr style="color: white" />
            <li class="nav-item" id="nav">
              <a class="nav-link" id="nav-link" href="#">
                <svg
                  xmlns="http://www.w3.org/2000/svg"
                  width="16"
                  height="16"
                  fill="currentColor"
                  class="bi bi-kanban-fill"
                  viewBox="0 0 16 16"
                  class="nav-icon"
                >
                  <path
                    d="M2.5 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2h-11zm5 2h1a1 1 0 0 1 1 1v3a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1zm-5 1a1 1 0 0 1 1-1h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3zm9-1h1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1z"
                  />
                </svg>
                Projects</a
              >
            </li>
            <hr style="color: white" />
            <li class="nav-item dropdown" id="nav">
              <a
                class="nav-link dropdown-toggle"
                href="#"
                id="navbarDropdown"
                role="button"
                data-bs-toggle="dropdown"
                aria-expanded="false"
                id="nav-link"
              >
                <svg
                  xmlns="http://www.w3.org/2000/svg"
                  width="16"
                  height="16"
                  fill="currentColor"
                  class="bi bi-three-dots"
                  viewBox="0 0 16 16"
                  class="nav-icon"
                >
                  <path
                    d="M3 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3z"
                  />
                </svg>

                More
              </a>
              <ul class="dropdown-menu" aria-labelledby="navbarDropdown">
                <li><a class="dropdown-item" href="#">Book Club</a></li>
                <li><a class="dropdown-item" href="#">Blog</a></li>
                <li><hr class="dropdown-divider" /></li>
                <li>
                  <a class="dropdown-item" href="#">Our Employees</a>
                </li>
              </ul>
            </li>
          </ul>
          <div class="d-flex">
            <a href="{{login_logout_link}}">
              <button
                class="btn btn-outline-success"
                name="login"
                id="login-btn"
              >
                {{login_logout}}
              </button>
            </a>
          </div>
        </div>
      </div>
    </nav>
    <!-- Optional JavaScript; choose one of the two! -->

    <!-- Option 1: Bootstrap Bundle with Popper -->
    <script src="{% static '/js/script.js' %}" type="text/javascript"></script>
    <script
      src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/js/bootstrap.bundle.min.js"
      integrity="sha384-b5kHyXgcpbZJO/tY9Ul7kGkf1S0CWuKcCD38l8YkeH8z8QjE0GmW1gYU5S9FOnJ0"
      crossorigin="anonymous"
    ></script>

    <!-- Option 2: Separate Popper and Bootstrap JS -->
    <!--
    <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.6.0/dist/umd/popper.min.js" integrity="sha384-KsvD1yqQ1/1+IA7gi3P0tyJcT3vR+NdBTt13hSJ2lnve8agRGXTTyNaBYmCR/Nwi" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/js/bootstrap.min.js" integrity="sha384-nsg8ua9HAw1y0W1btsyWgBklPnCUAFLuTMS2G72MMONqmOymq585AcH49TLBQObG" crossorigin="anonymous"></script>
    -->
  </body>
</html>

自定义 Css 文件中的代码

@media screen and (max-width: 767px) {
  .nav-icon {
    height: auto;
    width: auto;
    max-height: 40px;
    max-width: 140px;
  }
}

@media screen and (min-width: 768px) {
  .nav-icon {
    height: auto;
    width: auto;
    max-height: 50px;
    max-width: 125px;
  }
}

#nav {
  font-size: 30px;
}

#nav:hover {
  background-color: black;
  text-shadow: 500px;
}

#login-button {
  align-items: right;
}

#brand:hover {
  color: black;
}

#login-btn {
  height: 45px;
  width: 100px;
}

#nav-link {
  padding: 10px;
}

svg {
  height: 30px;
  width: 30px;
}

@media (min-width: 767px) {
  #brand {
    padding-right: 250px;
    font-size: 50px;
  }
  #brand-logo {
    padding-right: 10px;
    height: auto;
    width: auto;
    max-width: 250px;
    max-height: 90px;
  }
}

#brand-logo {
  height: auto;
  width: auto;
  max-width: 100px;
  max-height: 55px;
  padding-right: 5px;
}

#navigation-bar {
  align-items: center;
}

但这是带有 gif 的最终输出,我在其中 单击下拉菜单但它没有滑动:-

【问题讨论】:

  • 如果您想了解这里的内容,请告诉我,我会编辑帖子并添加您想要的详细信息
  • 问题终于被@LuizdeLimaSouza解决了

标签: html css frontend navbar bootstrap-5


【解决方案1】:

身份证号:

    <div
      class="collapse navbar-collapse"
      id="navbarSupportedContent navbar"
    >

必须与data-bs-target="#navbarSupportedContent" 具有相同的值。这就是按钮和下拉列表&lt;div&gt; 的链接方式。

尝试将其更改为id="navbarSupportedContent"

【讨论】:

  • 它对我不起作用。而且,bootstrap 5 中没有 jquery,bootstrap 5 已经删除了 jquery。第二件事对我也不起作用。 :(
  • 我忘记了什么。也有必要从 data-bs-target 中删除“-bs”。你是对的,在引导程序中删除 jQuery 是正确的,但是,一些引导程序功能(如下拉菜单和模式)不起作用,至少对我来说,没有 jQuery,即使大多数动画都可以正常工作。尝试删除“-bs”并添加 jQuery 并告诉我它是如何进行的 :)
  • 好的。忘记我之前说的一切,我已经在这里测试了你的 html,现在它可以在我的电脑上运行。问题是你的
    id,它应该是 id="navbarSupportedContent" 而不是 id="navbarSupportedContent navbar"。让我知道进展如何:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-09
相关资源
最近更新 更多