在导航条上的文本上的下拉箭头

问题描述 投票:0回答:1

我想在导航条上设置一个下拉菜单。它可以工作,但箭头在菜单项的文字上。enter image description here

Codepen.ioogonzalespenQWj

https:/codepen.ioogonzalespenQWjmorP

编码

<nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark" style="height: 70px;">
    <a class="navbar-brand" href="#">Fixed navbar</a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarCollapse">
      <ul class="navbar-nav mr-auto">
        <li class="nav-item active">
          <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Link</a>
        </li>
        <li class="nav-item">
          <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
        </li>
        <li class="nav-item dropdown">
          <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
            More
          </a>
          <div class="dropdown-menu" aria-labelledby="navbarDropdown">
            <a class="dropdown-item" href="/support/">Support and Consulting</a>
            <a class="dropdown-item" href="/test-driven-development/">What is Test-Driven Development?</a>
            <a class="dropdown-item" href="/testimonials/">Testimonials</a>
          </div>
        </li>
      </ul>

        <form class="form-inline ml-auto">
          <a href="{% url 'account_login' %}" class="btn btn-outline-secondary">Log in</a>
          <a href="{% url 'account_signup' %}" class="btn btn-primary ml-2">Sign up</a>
        </form>

    </div>
  </nav>

奖金

我也想把每一个导航条项目放在更靠右的位置。我知道我可以用CSS来实现这个功能,但是我是否缺少一个Boostrap类?

html css twitter-bootstrap
1个回答
1
投票

ul 标签没有关闭,我修复了这个问题,并回答了你的 bonus 问题也是如此。

  1. 之所以在过文上,是因为,既。dropdownlink 在同一个区块内,所以你必须指定了 width 为了让这些人能够直插其中,我刚刚提供了 100px 在...之下 .nav-link{...} 你可以根据你的要求自由更改。
  2. 要将内容向右移动,你可以有 width 属性的黄色块(在我的snipppetfiddle中查看),或者你可以为黄色块提供 flex 选项,并使用'justify-content:space-between;'。

在全屏中查看,由于 media-query 你用过的。

.nav-link{ border:1px solid yellow; margin:5px; width:100px; }

拨弄 到游乐场。

$(document).ready(function() {

  $('#sidebarCollapse').on('click', function() {
    $('#sidebar').toggleClass('active');
  });

});
/* Sticky footer styles
-------------------------------------------------- */

html {
  position: relative;
  min-height: 100%;
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

body {
  margin-bottom: 60px;
  /* Margin bottom by footer height */
  font-family: 'Poppins', sans-serif;
  background: #fafafa;
  padding-top: 70px;
}

.container {
  max-width: 960px;
}

.pricing-header {
  max-width: 700px;
}

.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 60px;
  /* Set the fixed height of the footer here */
  line-height: 60px;
  /* Vertically center the text there */
  background-color: #f5f5f5;
}


/* NAVBAR TOP */

#top-navbar ul li.active>a a[aria-expanded="true"] {
  color: #1f1f1f;
  background: #12b556;
}

#top-navbar a:visited {
  color: #fff;
}

#top-navbar a:link {
  color: #fff;
}

#top-navbar a.subitem:link {
  color: #1f1f1f;
}


/* ==== */


/* SIDEBAR */


/* ---------------------------------------------------
    SIDEBAR STYLE
----------------------------------------------------- */

.wrapper {
  display: flex;
  align-items: stretch;
}

#sidebar {
  min-width: 250px;
  max-width: 250px;
  background: #1f1f1f;
  color: #fff;
  transition: all 0.3s;
}

#sidebar.active {
  min-width: 80px;
  max-width: 80px;
  text-align: center;
}

#sidebar.active .sidebar-header h3,
#sidebar.active .CTAs {
  display: none;
}

#sidebar.active .sidebar-header strong {
  display: block;
}

#sidebar ul li a {
  text-align: left;
}

#sidebar.active ul li a {
  padding: 20px 10px;
  text-align: center;
  font-size: 0.85em;
}

#sidebar.active ul li a i {
  margin-right: 0;
  display: block;
  font-size: 1.8em;
  margin-bottom: 5px;
}

#sidebar.active ul ul a {
  padding: 10px !important;
}

#sidebar.active .dropdown-toggle::after {
  top: auto;
  bottom: 10px;
  right: 50%;
  -webkit-transform: translateX(50%);
  -ms-transform: translateX(50%);
  transform: translateX(50%);
}

#sidebar .sidebar-header {
  padding: 20px;
  background: #1f1f1f;
}

#sidebar .sidebar-header strong {
  display: none;
  font-size: 1.8em;
}

#sidebar ul.components {
  padding: 20px 0;
  border-bottom: 1px solid #47748b;
}

#sidebar ul li a {
  padding: 10px;
  font-size: 1.1em;
  display: block;
}

#sidebar ul li a:hover {
  color: #12b556;
  background: #fff;
}

#sidebar ul li a i {
  margin-right: 10px;
}

#sidebar ul li.active>a.sidebar-link a[aria-expanded="true"] {
  color: #fff;
  background: #12b556;
}

a[data-toggle="collapse"] {
  position: relative;
}

#navbarCollapse {
  border: 1px solid red;
}

.nav-link {
  border: 1px solid yellow;
  margin: 5px;
  width: 100px;
}

.dropdown-toggle::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}

ul ul a {
  font-size: 0.9em !important;
  padding-left: 30px !important;
  background: #12b556;
}

ul.CTAs {
  padding: 20px;
}

ul.CTAs a {
  text-align: center;
  font-size: 0.9em !important;
  display: block;
  border-radius: 5px;
  margin-bottom: 5px;
}

a.download {
  background: #fff;
  color: #12b556;
}

a.article,
a.article:hover {
  background: #12b556 !important;
  color: #fff !important;
}

a.sidebar-link:visited {
  color: #fff;
}

a.sidebar-link:link {
  color: #fff;
}


/* ---------------------------------------------------
  CONTENT STYLE
----------------------------------------------------- */

#content {
  width: 100%;
  padding: 20px;
  min-height: 100vh;
  transition: all 0.3s;
}


/* ---------------------------------------------------
  MEDIAQUERIES
----------------------------------------------------- */

@media (max-width: 768px) {
  #sidebar {
    min-width: 80px;
    max-width: 80px;
    text-align: center;
    margin-left: -80px !important;
  }
  .dropdown-toggle::after {
    top: auto;
    bottom: 10px;
    right: 50%;
    -webkit-transform: translateX(50%);
    -ms-transform: translateX(50%);
    transform: translateX(50%);
  }
  #sidebar.active {
    margin-left: 0 !important;
  }
  #sidebar .sidebar-header h3,
  #sidebar .CTAs {
    display: none;
  }
  #sidebar .sidebar-header strong {
    display: block;
  }
  #sidebar ul li a {
    padding: 20px 10px;
  }
  #sidebar ul li a span {
    font-size: 0.85em;
  }
  #sidebar ul li a i {
    margin-right: 0;
    display: block;
  }
  #sidebar ul ul a {
    padding: 10px !important;
  }
  #sidebar ul li a i {
    font-size: 1.3em;
  }
  #sidebar {
    margin-left: 0;
  }
  #sidebarCollapse span {
    display: none;
  }
}
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
  <title>{% block title %}DjangoX{% endblock title %}</title>
  <meta name="description" content="A framework for launching new Django projects quickly.">
  <meta name="author" content="">
  <link rel="shortcut icon" type="image/x-icon" href="{% static 'images/favicon.ico' %}">


  <!-- Bootstrap CSS -->
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">
  <link href="https://use.fontawesome.com/releases/v5.12.0/css/all.css" rel="stylesheet">
  <link rel="stylesheet" href="{% static 'css/base.css' %}">
  <link rel="stylesheet" href="{% static 'css/price.css' %}">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

  <script>
    $(document).ready(function() {

      $('#sidebarCollapse').on('click', function() {
        $('#sidebar').toggleClass('active');
      });

    });
  </script>
</head>

<body>

  <!--MENU SUPERIOR-->
  <!-- Fixed navbar -->
  <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark" style="height: 70px;">
    <a class="navbar-brand" href="#">Fixed navbar</a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarCollapse" aria-controls="navbarCollapse" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarCollapse">
      <ul class="navbar-nav mr-auto">
        <li class="nav-item active">
          <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Link</a>
        </li>
        <li class="nav-item">
          <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
        </li>


        <li class="nav-item dropdown">
          <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
            More
          </a>


          <div class="dropdown-menu" aria-labelledby="navbarDropdown">
            <a class="dropdown-item" href="/support/">Support and Consulting</a>
            <a class="dropdown-item" href="/test-driven-development/">What is Test-Driven Development?</a>
            <a class="dropdown-item" href="/testimonials/">Testimonials</a>
          </div>
        </li>


      </ul>
      <form class="form-inline ml-auto">
        <a href="{% url 'account_login' %}" class="btn btn-outline-secondary">Log in</a>
        <a href="{% url 'account_signup' %}" class="btn btn-primary ml-2">Sign up</a>
      </form>
    </div>
  </nav>
  <!-- FIN MENU SUPERIOR-->

  <div class="wrapper">
    <!-- Sidebar  -->
    <nav id="sidebar">
      <div class="sidebar-header">
        <img src="static\images\elim-logo.png" alt="Ministerios Elim" width="50%" height="50%">
        <strong>ELIM</strong>
      </div>

      <ul class="list-unstyled components">
        <li class="">
          <a class="sidebar-link" href="#capitulo1" data-toggle="collapse" aria-expanded="false" class="dropdown-toggle">
            <i class="fas fa-home"></i> Capítulo 1
          </a>
          <ul class="collapse list-unstyled" id="capitulo1">
            <li>
              <a class="sidebar-link" href="#">Introducción</a>
            </li>
            <li>
              <a class="sidebar-link" href="#">¿Qué es la salvación?</a>
            </li>
            <li>
              <a class="sidebar-link" href="#">¿Se pierde la salvación?</a>
            </li>
          </ul>
        </li>
      </ul>
    </nav>


    <!-- Page Content  -->
    <div id="content">

      <nav class="navbar navbar-expand-lg navbar-light bg-light">
        <div class="container-fluid">

          <button type="button" id="sidebarCollapse" class="btn btn-info">
              <i class="fas fa-align-left"></i>
              <span>Toggle Sidebar</span>
            </button>
        </div>
      </nav>

      <hr><br>

      <main role="main" class="container">
        <div class="row">
          <div class="col-md-8">
            {% block content %} {% endblock content %}
          </div>
          <div class="col-md-4 float-right" id="LocalSide">

            <form class="search-form" action="/search/" method="post">
              <input type="hidden" name="csrfmiddlewaretoken" value="KTlYgVaxnAYKzLle9WWDNIoE0MDSvAVldfbsnKbfpAStWafCb1MVMgwLdArZUEiP">
              <div class="form-group">
                <input type="search" class="form-control search-course" placeholder="Buscar curso" name="search_term" required="">
                <input type="hidden" value="3" name="course_id">
              </div>
            </form>

            <h2 class="local-side-heading">In this Section:</h2>
            <nav class="local-nav">
              <ol data-local-nav-list=""></ol>
            </nav>


            <a class="pcta" href="/payments/tdd-flask/" data-a-buy-course-cta="tdd-flask">
              <span class="label label-success">

                  <span class="pcta-label">Get the</span>
              <span class="pcta-hook">full course</span>

              <span class="sr-only">for</span>
              <span class="pcta-badge" aria-hidden="true">Now Only</span>
              </span>
              <span class="pcta-price">$30</span>
            </a>



            <a href="#TOP" class="local-side-jump" data-back-to-top="">↑ Back to top</a>
          </div>
        </div>
      </main>


      <footer class="footer">
        <div class="container">
          <span class="text-muted">Footer...</span>
        </div>
      </footer>

    </div>
  </div>

0
投票

在你的代码中".dropdown-toggle::after "正确的值是问题,改成这个代码就可以了。

.dropdown-toggle::after {
    display: block;
    position: absolute;
    top: 50%;
    right: -7px;
    transform: translateY(-50%);
}

0
投票

删掉下面你设计的手动CSS,因为它覆盖了bootstrap的默认CSS,这是不合适的。

.dropdown-toggle::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}
© www.soinside.com 2019 - 2024. All rights reserved.