Bootstrap 5 Navbar Toggler无响应,移动端无法显示菜单列表
解决Bootstrap 5移动端导航栏切换按钮不生效的问题
你的导航栏切换按钮失效主要是两个原因,直接改这几点就能解决:
- 属性前缀错误:Bootstrap 5把折叠组件的触发属性从
data-toggle/data-target改成了data-bs-toggle/data-bs-target,你还在使用旧版属性,导致点击事件无法被Bootstrap识别。 - 脚本重复引入:你同时加载了
bootstrap.min.js和bootstrap.bundle.min.js,后者已经包含了前者的所有功能+Popper依赖,重复引入会导致JS冲突。
另外还有个小细节:Bootstrap 5里已经没有col-xs-*的类名了,超小屏幕(<576px)直接用col-*就行,所以xs-9要改成col-9。
修复后的完整代码:
<body> <header class="bg-info"> <div class="row text-white"> <div class="col-md-6 col-9"> <h2>yahiya muhammed</h2> </div> <div class="col-md-6 col-3 my-auto"> <nav class="navbar navbar-expand-lg navbar-light"> <button class="navbar-toggler ms-auto" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse justify-content-end" id="navbarSupportedContent"> <ul class="navbar-nav"> <li class="nav-item active"> <a class="nav-link text-white" href="#">Home <span class="sr-only"></span></a> </li> <li class="nav-item"> <a class="nav-link text-white" href="#">services</a> </li> <li class="nav-item"> <a class="nav-link text-white" href="#">prjects</a> </li> <li class="nav-item"> <a class="nav-link text-white" href="#">contact me</a> </li> </ul> </div> </nav> </div> </div> </header> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4" crossorigin="anonymous"></script> </body>
内容的提问来源于stack exchange,提问作者yahiya
相关产品推荐
相关产品推荐

