Bootstrap 4 将两个导航栏折叠成一个切换按钮 [英] Bootstrap 4 collapsing two navbars into one toggle button
问题描述
我一直在尝试应用这个 Bootstrap4.0 - 两个 NavBar 折叠成一个切换 回答了我的问题,但经过一些努力后仍未解决.
我正在尝试将两个导航栏的内容合并为一个切换按钮.
这两个问题是一旦折叠为 sm 我的切换按钮不显示其内容(来自任一目标),并且在 sm 宽度下,我的下部导航栏无法保持其高度.我的代码:
<meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1,shrink-to-fit=no"><!-- Bootstrap CSS --><link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcFAWJSAGiXiA"crossorigin="匿名"><title>你好,世界!</title>头部><身体><nav class="navbar navbar-expand-sm navbar-dark bg-dark sticky-top"><button class="navbar-toggler" data-toggle="collapse" data-target="#collapse_target1, #collapse_target2"><span class="navbar-toggler-icon"></span>按钮><div class="collapse navbar-collapse" id="collapse_target1"><ul class="navbar-nav mx-auto"><li class="nav-item"><a class="nav-link" href="#">链接 1</a><li class="nav-item"><a class="nav-link" href="#">链接 2</a><a class="navbar-brand"><img src="https://image.freepik.com/free-vector/businessman-shouting-through-megaphone_23-2147511376.jpg" style="height: 2em"><span>首页</span></a><li class="nav-item"><a class="nav-link" href="#">链接 3</a><li class="nav-item"><a class="nav-link" href="#">链接 4</a>
</nav><nav class="navbar navbar-expand-sm navbar-light bg-light"><div class="collapse navbar-collapse" id="collapse_target2"><ul class="navbar-nav mx-auto"><li class="nav-item"><a class="nav-link" href="#">链接 5</a><li class="nav-item"><a class="nav-link" href="#">链接 6</a><li class="nav-item"><a class="nav-link" href="#">链接 7</a>
</nav><script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7Xfakvfakvskcrossorigin="anonymous"></script><script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjPVCUar5+6"7crossorigin="anonymous"></script>
使用单个类来定位导航栏的数据,而不是使用不同的 id.例如,给两个 navbar-collapse 元素都指定 navbars
类,然后目标是 data-target=".navbars"
.
演示:https://www.codeply.com/go/PvHpcBNuAp
另外,我不知道你为什么在第一个导航栏上使用 如果您希望两个导航栏都固定在顶部,看到这个答案.sticky-top
.您应该删除它,否则滚动时第二个导航栏将在移动设备上的第一个导航栏下方滑动.
</nav><nav class="navbar navbar-expand-sm navbar-light bg-light"><div class="collapse navbar-collapse navbars" id="collapse_target2"><ul class="navbar-nav mx-auto"><li class="nav-item"><a class="nav-link" href="#">链接 5</a><li class="nav-item"><a class="nav-link" href="#">链接 6</a><li class="nav-item"><a class="nav-link" href="#">链接 7</a>