You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

移动端导航栏Media Query失效,汉堡菜单图标不显示求助

解决移动端汉堡菜单不显示的问题

我仔细看了你的代码,发现几个可能导致汉堡图标(.burger)无法显示的原因,你可以逐一排查:

1. 确保在移动端尺寸下测试

你的.burger元素默认设置了display: none;,只有在屏幕宽度小于768px时,媒体查询才会把它改成display: flex;。如果你在桌面端(大于768px)查看,自然看不到它。可以通过浏览器的开发者工具切换到移动端视图(比如Chrome的Device Toolbar)来测试。

2. 调整汉堡菜单的层级,避免被遮挡

.burger使用了position: fixed;,但没有设置z-index,有可能被导航栏(nav)或其他元素遮挡。你可以在.burger的样式里添加:

.burger {
  /* 保留原有样式 */
  z-index: 10; /* 确保它在其他元素上方 */
}

3. 检查汉堡条的颜色对比度

你的汉堡条(.burger span)设置了background: white;,页面背景是#f1f1f1(浅灰色),理论上应该能看到,但如果导航栏(nav)背景是#5d4954(深紫色),汉堡菜单在nav区域内的话,白色条是清晰的。不过可以临时把背景色改成黑色来验证:

.burger span {
  background: #000; /* 临时测试用,确认是否显示 */
}

4. 确认汉堡容器的高度足够

.burger的高度是2rem,三个汉堡条各0.25rem,加上justify-content: space-around的间距,理论上足够,但如果间距计算有问题,可能导致条被压缩。可以尝试增大容器高度:

.burger {
  height: 2.5rem; /* 稍微增大高度,给间距留足空间 */
}

5. 检查媒体查询是否生效

有时候浏览器缓存会导致CSS不更新,你可以强制刷新页面(Ctrl+F5),或者在开发者工具里查看.burger的样式,确认媒体查询中的display: flex;是否被正确应用。

按照这些步骤排查,应该能解决汉堡图标不显示的问题。

内容的提问来源于stack exchange,提问作者Vlatko Stojkoski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 06:31:23