Bootstrap 4-下拉链接内的H3

时间:2019-01-17 10:10:06

标签: css drop-down-menu bootstrap-4

我对导航栏中的下拉菜单有疑问。对于普通的导航链接(无下拉菜单),我将菜单文本放在了H3中,但是当我尝试对下拉菜单链接进行相同操作时,箭头不在标题旁边,而是在标题下方。我决定用一个span代替h3并提供与h3相同的CSS,这次箭头位于正确的位置,但是未考虑所有其他样式。

第三个示例是一个更接近我想要的示例,但是字体大小并不完全相同。

没有下拉列表的原始代码

html {
  font-size: 16px;
}

body {
  font-family: Arial;
  font-size: 1rem;
}

#logo {
  max-height: 2.5rem;
}

.nav_container {
  margin-bottom: 10%;
}

h1,h2,h3,h4,h5,h6 {
  margin-bottom: .25rem;
  margin-top: .25rem;
}

h3 {
  font-size: 1.25rem;
}
<!DOCTYPE html>
<html>

<head>
  <meta charset="UTF-8">
  <title>Original</title>
  <!-- Bootstrap 3.0-->
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

  <!-- Bootstrap 4.0-->
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>

  <!-- FontAwesome5 Icons -->
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css" integrity="sha384-B4dIYHKNBt8Bc12p+WXckhzcICo0wtJAoU8YZTY5qE0Id1GSseTk6S+L3BlXeVIU" crossorigin="anonymous">
  
  <!-- CSS -->
  <link rel="stylesheet" type="text/css" href="css/main.css">
  <!-- Fin liens CSS et Script -->
</head>

<body>
  <div class="nav_container">
    <nav class="navbar navbar-expand-sm bg-dark navbar-dark fixed-top">
      <div class="d-flex align-items-center">
        <a class="navbar-brand" href="#"><img id="logo" src="https://i.stack.imgur.com/440u9.png"></a>
      </div>
      <ul class="navbar-nav">
        <li class="nav-item">
          <a class="nav-link text-uppercase" href="index.php">
            <h3 class="font-weight-bold">Home</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link1</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link2</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link3</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link4</h3>
          </a>
        </li>

      </ul>
    </nav>
  </div>
</body>

</html>

我的尝试

html {
  font-size: 16px;
}

body {
  font-family: Arial;
  font-size: 1rem;
}

#logo {
  max-height: 2.5rem;
}

.nav_container {
  margin-bottom: 10%;
}

#navbardrop {
  font-size: 1.25rem;
}

#navbardrop2 {
  font-size: 1.25rem;
}

#navbardrop3 { 
  font-size: 1.25rem;
  margin-bottom: .25rem;
  margin-top: .25rem;
}

#admin_menu {
  font-weight: 700!important;
  margin-bottom: .25rem;
  margin-top: .25rem;
}

h1, h2, h3, h4, h5, h6 {
  margin-bottom: .25rem;
  margin-top: .25rem;
}

h3 {
  font-size: 1.25rem;
}
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Example</title>
  <!-- Bootstrap 3.0-->
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

  <!-- Bootstrap 4.0-->
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>

  <!-- FontAwesome5 Icons -->
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css" integrity="sha384-B4dIYHKNBt8Bc12p+WXckhzcICo0wtJAoU8YZTY5qE0Id1GSseTk6S+L3BlXeVIU" crossorigin="anonymous">

  <!-- CSS-->
  <link rel="stylesheet" type="text/css" href="css/main.css">
  <!-- Fin liens CSS et Script -->
</head>

<body>
  <h2>Try 1</h2>
  <div class="nav_container">
    <nav class="navbar navbar-expand-sm bg-dark navbar-dark">
      <div class="d-flex align-items-center">
        <a class="navbar-brand" href="#"><img id="logo" src="https://i.stack.imgur.com/440u9.png"></a>
      </div>
      <ul class="navbar-nav">
        <li class="nav-item">
          <a class="nav-link text-uppercase" href="index.php">
            <h3 class="font-weight-bold">Home</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link 1</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link2</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link3</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link4</h3>
          </a>
        </li>

        <!-- Admin  -->
        <li class="nav-item dropdown">
          <a class="nav-link dropdown-toggle" href="#" id="navbardrop" data-toggle="dropdown">
            <h3 id="admin_menu">Admin</h3>
          </a>
          <div class="dropdown-menu">
            <a class="dropdown-item" href="#">
              <h4>Admin1</h4>
            </a>
            <a class="dropdown-item" href="#">
              <h4>Admin2</h4>
            </a>
          </div>
        </li>
      </ul>
    </nav>
  </div>

  <h2>Try 2</h2>

  <div class="nav_container">
    <nav class="navbar navbar-expand-sm bg-dark navbar-dark">
      <div class="d-flex align-items-center">
        <a class="navbar-brand" href="#"><img id="logo" src="https://i.stack.imgur.com/440u9.png"></a>
      </div>
      <ul class="navbar-nav">
        <li class="nav-item">
          <a class="nav-link text-uppercase" href="index.php">
            <h3 class="font-weight-bold">Home</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link 1</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link2</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link3</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link4</h3>
          </a>
        </li>

        <!-- Admin  -->
        <li class="nav-item dropdown">
          <a class="nav-link dropdown-toggle" href="#" id="navbardrop2" data-toggle="dropdown"><span id="admin_menu">Admin</span></a>
          <div class="dropdown-menu">
            <a class="dropdown-item" href="#">
              <h4>Admin1</h4>
            </a>
            <a class="dropdown-item" href="#">
              <h4>Admin2</h4>
            </a>
          </div>
        </li>
      </ul>
    </nav>
  </div>

  <h2>Try 3</h2>

  <div class="nav_container">
    <nav class="navbar navbar-expand-sm bg-dark navbar-dark">
      <div class="d-flex align-items-center">
        <a class="navbar-brand" href="#"><img id="logo" src="https://i.stack.imgur.com/440u9.png"></a>
      </div>
      <ul class="navbar-nav">
        <li class="nav-item">
          <a class="nav-link text-uppercase" href="index.php">
            <h3 class="font-weight-bold">Home</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link 1</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link2</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link3</h3>
          </a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">
            <h3 class="font-weight-bold">Link4</h3>
          </a>
        </li>

        <!-- Admin  -->
        <li class="nav-item dropdown">
          <a class="nav-link dropdown-toggle font-weight-bold" href="#" id="navbardrop3" data-toggle="dropdown">Admin</a>
          <div class="dropdown-menu">
            <a class="dropdown-item" href="#">
              <h4>Admin1</h4>
            </a>
            <a class="dropdown-item" href="#">
              <h4>Admin2</h4>
            </a>
          </div>
        </li>
      </ul>
    </nav>
  </div>
</body>

</html>

2 个答案:

答案 0 :(得分:0)

position:relative赋予h3,将position:absolute赋予:after并相应地进行调整。谢谢

答案 1 :(得分:0)

解决方法

CSS

    Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/pymodm/queryset.py", line 127, in first
    return next(iter(self.limit(-1)))
StopIteration

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/konsof01/PycharmProjects/testthisfuckingshit/settings.py", line 29, in <module>
    do = detection_object.objects.raw({'legacy_id': 1437424}).first()
  File "/usr/local/lib/python3.7/site-packages/pymodm/queryset.py", line 129, in first
    raise self._model.DoesNotExist()
__main__.DoesNotExist

HTML

#navbardrop{
  font-size: 1.25rem;
}

#admin_menu {
  font-weight: 700!important;
  margin-bottom: .25rem;
  margin-top: .25rem; 
}

h3{
    font-size: 1.25rem;
}

.dropdown-toggle::after{
    display: none;
}

h4{
    font-size: 1rem;
}

结果

enter image description here