Bootstrap - 总是汉堡菜单

6

我有一个关于Bootstrap的问题。当我在CodePen等网站上检查我的代码时,导航栏是响应式的,可以从可见的链接变为汉堡菜单,但是如果我在自己的文档中检查它,无论分辨率是大还是小,它始终是汉堡菜单。你能帮我吗?我正在尝试解决这个问题,但我不知道发生了什么。

body {
  background-image: url("img/bg.png");
  font-family: 'Raleway', sans-serif;
}
<html lang="pl">
    <head>
        <title></title>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css">
        <link href="https://fonts.googleapis.com/css?family=Raleway" rel="stylesheet">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.6/umd/popper.min.js"></script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js"></script>
    </head>
    <body>
        <div class="container">
        <nav class="navbar navbar-toggleable-md navbar-light" id="commRollover">
            <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
            <a class="navbar-brand" href="#"><img src="img/logo.png" alt="Logo" style="height: 40px;"></a>
            <div class="collapse navbar-collapse justify-content-end" id="navbarNav">
                <ul class="navbar-nav">
                    <li class="nav-item active">
                        <a class="nav-link" href="#">O nas<span class="sr-only">(current)</span></a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="#">Features</a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="#">Pricing</a>
                    </li>
                </ul>
            </div>
        </nav>
    </div>
</body>


“it is always hamburger menu”是什么意思?当然,代码始终可见,它是CSS样式菜单在任何屏幕上看起来好看的原因。 - Jerodev
我的意思是,无论是移动版还是桌面版,都有切换按钮。 - Tymek T.
1个回答

8
你需要使用“navbar-expand-lg”或“navbar-expand-md”等类来使Bootstrap 4导航栏仅在较小的屏幕上显示汉堡菜单。以下是官方的Bootstrap示例。

https://getbootstrap.com/docs/4.0/components/navbar/#supported-content

并且附上一个与您的代码合并的示例。

<div class="container">
   <nav class="navbar navbar-toggleable-md navbar-expand-md navbar-light" id="commRollover">
            <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
            <a class="navbar-brand" href="#"><img src="img/logo.png" alt="Logo" style="height: 40px;" ></a>
            <div class="collapse navbar-collapse justify-content-end" id="navbarNav">
                <ul class="navbar-nav">
                    <li class="nav-item active">
                        <a class="nav-link" href="#">O nas<span class="sr-only">(current)</span></a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="#">Features</a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="#">Pricing</a>
                    </li>

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

而且,要始终显示汉堡菜单,您可以完全省略 navbar-expand-{sm, md, lg, xl, xxl},至少在BS5上是这样的。 - Dario Zadro

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接