首页 > 解决方案 > Bootstrap 5导航不像父容器那样宽

问题描述

我在容器内的 Bootstrap 中创建了一个导航,但由于某种原因,导航栏没有容器那么宽,但为什么呢?我什至不得不手动设置导航栏的填充。

代码:index.php

   <!DOCTYPE html>
    <html lang="cs">
        <head>
            <title>xGhost.cz | Československý Gamehosting.</title>
            <!-- meta data -->
            <meta name="author" content="Jan Dvořák">
            <meta charset="utf-8">
            <meta name="viewport" content="width=device-width, initial-scale=1">
            <!-- styles -->
            <link rel="stylesheet" href="css/style.css">
            <!-- BOOTSTRAP START -->
            <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0/dist/css/bootstrap.min.css" rel="stylesheet" >
            <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta3/dist/js/bootstrap.bundle.min.js" integrity="sha384-JEW9xMcG8R+pH31jmWH6WWP0WintQrMb4s7ZOdauHnUtxwoG2vI5DkLtS3qm9Ekf" crossorigin="anonymous"></script>
            <!-- BOOTSTRAP END -->      
        </head>
        <body>
            <div class="container-lg">
                <nav class="navbar navbar-expand-md navbar-dark bg-dark my-5">
                    <a class="navbar-brand" href="#">xGhost.cz</a>
                    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarTogglerDemo02" aria-controls="navbarTogglerDemo02" aria-expanded="false" aria-label="Toggle navigation">
                        <span class="navbar-toggler-icon"></span>
                    </button>
    
                    <div class="collapse navbar-collapse" id="navbarTogglerDemo02">
                        <ul class="navbar-nav ms-auto">
                            <li class="nav-item"><a class="nav-link active" aria-current="page" href="#">Úvod</a></li>
                            <li class="nav-item"><a class="nav-link" href="#">Ceník</a></li>
                            <li class="nav-item"><a class="nav-link" href="#">Objednávka</a></li>
                            <li class="nav-item"><a class="nav-link" href="#">Příručka</a></li>
                            <li class="nav-item"><a class="nav-link" href="#">Servery</a></li>
                            <li class="nav-item"><a class="nav-link" href="#">Technika</a></li>
                            <li class="nav-item"><a class="nav-link" href="#">Kontakt</a></li>
                        </ul>
                    </div>
                </nav>
    
                <div class="row">
                    <div class="content col-md-8">Col here ok? content</div>
                    <div class="login col-md-4">Col here ok? login</div>
                </div>
            </div>
        </body>
    </html>

样式.css

.navbar {
    padding-left: 15px;
    padding-right: 15px;
    text-align: center;
}

.content, .login {
    background: #f0f0f0;
}

这是一个预览: https ://jsfiddle.net/Ld9f5a0e/

标签: javascripthtmlcssbootstrap-5

解决方案


您必须将其包装nav在一个容器中,其类为row

container-lg有一些积极的margin-leftand margin-right,但你必须加上rowwhomargin-leftmargin-right是消极的,这会抵消 的影响margin

.navbar {
  padding-left: 15px;
  padding-right: 15px;
  text-align: center;
}

.content,
.login {
  background: #f0f0f0;
}
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.1/dist/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container-lg">
  <div class="row">

    <nav class="navbar navbar-expand-md navbar-dark bg-dark my-5">
      <a class="navbar-brand" href="#">xGhost.cz</a>
      <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarTogglerDemo02" aria-controls="navbarTogglerDemo02" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
          </button>

      <div class="collapse navbar-collapse" id="navbarTogglerDemo02">
        <ul class="navbar-nav ms-auto">
          <li class="nav-item"><a class="nav-link active" aria-current="page" href="#">Úvod</a></li>
          <li class="nav-item"><a class="nav-link" href="#">Ceník</a></li>
          <li class="nav-item"><a class="nav-link" href="#">Objednávka</a></li>
          <li class="nav-item"><a class="nav-link" href="#">Příručka</a></li>
          <li class="nav-item"><a class="nav-link" href="#">Servery</a></li>
          <li class="nav-item"><a class="nav-link" href="#">Technika</a></li>
          <li class="nav-item"><a class="nav-link" href="#">Kontakt</a></li>
        </ul>
      </div>
    </nav>
  </div>

  <div class="row">
    <div class="content col-md-8">Col here ok? content</div>
    <div class="login col-md-4">Col here ok? login</div>
  </div>
</div>


推荐阅读