90% 是 js 依赖缺失或属性命名错误;必须用 data-bs-toggle="collapse" 和 data-bs-target="#id"(id严格匹配),并确保 bootstrap.bundle.min.js 已正确加载且 dom 就绪。

导航栏响应式按钮(汉堡图标)没反应,90% 是 JS 依赖缺失或属性命名错误,不是 HTML 写错了。
检查 data-bs-toggle 和 data-bs-target 是否带 bs- 前缀
Bootstrap 5+ 彻底废弃了 data-toggle 和 data-target,必须用带 bs- 的新命名。浏览器对旧写法完全静默忽略,不报错也不生效。
- ❌ 错误写法:
data-toggle="collapse" data-target="#navbarNav" - ✅ 正确写法:
data-bs-toggle="collapse" data-bs-target="#navbarNav" - 确保
data-bs-target的值与目标容器的id完全一致(大小写、连字符、空格都不能差) - 如果用了自定义 ID(比如
id="myNavbar"),data-bs-target必须同步改成"#myNavbar"
确认 bootstrap.bundle.min.js 已加载且无冲突
折叠功能完全依赖 JavaScript,仅引入 CSS 是无效的。而且 Bootstrap 5 不再需要 jQuery,但必须有 Popper 支持——bootstrap.bundle.min.js 已内置,别额外引入。
- ✅ 推荐只加这一行(放在











