本文针对纯 CSS 构建的移动端下拉导航(如汉堡菜单+多级 .onclick-menu)中“子菜单链接点击无效”这一高频问题,直击根源::focus 伪类在子元素点击时导致父容器失焦、菜单闪退,提出以 :focus-within 替代的标准化修复方案,并附可直接运行的代码优化与关键注意事项。
本文针对纯 css 构建的移动端下拉导航(如汉堡菜单+多级 `.onclick-menu`)中“子菜单链接点击无效”这一高频问题,直击根源:`:focus` 伪类在子元素点击时导致父容器失焦、菜单闪退,提出以 `:focus-within` 替代的标准化修复方案,并附可直接运行的代码优化与关键注意事项。
在纯 CSS 实现的响应式导航中(尤其常见于 CodePen 类代码片段),开发者常借助 tabindex="0" + :focus 触发下拉菜单显示,例如您代码中的这段逻辑:
.onclick-menu:focus .onclick-menu-content {
opacity: 1;
visibility: visible;
display: inherit;
pointer-events: auto;
}
该写法看似简洁——当用户点击或按 Tab 键聚焦到
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











