Hamburger菜单可展开但无法关闭问题排查求助
你的Bootstrap 5导航栏汉堡菜单可以正常展开,但点击无法收起,HTML结构验证无错,以下是具体排查和解决方向:
移除重复加载的Bootstrap JS文件
你同时加载了bootstrap.bundle.min.js(已整合Popper)和单独的popper.min.js+bootstrap.min.js,这会导致JavaScript冲突,是汉堡菜单功能异常的核心诱因。只保留bootstrap.bundle.min.js即可,修改后的头部JS引入代码如下:<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0-beta1/dist/js/bootstrap.bundle.min.js" integrity="sha384-pprn3073KE6tl6bjs2QrFaJGz5/SUsLqktiwsUTF55Jfv3qYSDhgCecCxMW52nD2" crossorigin="anonymous"></script>排查自定义CSS的干扰
你的main.css可能覆盖了Bootstrap折叠组件的默认样式,比如修改了.collapse类的display属性,或是给导航栏元素添加了pointer-events: none这类会阻断点击事件的属性。可以临时移除main.css的引入,测试菜单是否能正常收起,以此确认是否为自定义样式导致的问题。清理重复的Font Awesome资源
你同时加载了两个版本的Font Awesome(4.7.0和kit版本),可能引发样式或JS冲突,建议只保留其中一个版本,优先选用较新的kit版本,移除旧的4.7.0引入代码。验证按钮与折叠容器的属性关联
虽然你的按钮data-bs-target="#navbarToggle"和折叠容器id="navbarToggle"匹配正常,但可以通过浏览器开发者工具查看点击按钮时,aria-expanded属性是否会动态切换。如果属性无变化,说明JS事件未正确绑定,需回到第一步彻底解决JS重复加载的问题。
内容的提问来源于stack exchange,提问作者asapbeet

