使用CSS控制Div显示/隐藏失效:常规尺寸下Web地图不显示
我来帮你梳理几个最常见的排查方向,你可以逐一验证:
默认显示状态未正确设置
你是不是给Web版地图的div默认设置了display: none;,但在常规屏幕尺寸的CSS规则里没有把它恢复成可见状态?比如要确保在非移动端的媒体查询外(或者在min-width: 768px的媒体查询块内),给Web版地图div设置display: block;(或者它需要的其他显示值,比如flex)。媒体查询逻辑冲突或遗漏
检查你的媒体查询写法:是不是只写了针对max-width: 767px的移动端规则,却没给常规尺寸写对应的显示规则?或者有没有重复的CSS规则,后面的代码意外覆盖了Web版地图的显示设置?比如如果把Web版地图的显示规则错误地放在了移动端的媒体查询块里,那常规尺寸下自然不会生效。CSS选择器优先级被覆盖
打开浏览器开发者工具(F12),选中Web版地图的div,查看它的display属性是不是被划掉了——这说明有更高优先级的选择器(比如带!important的规则、内联样式、更具体的类/id选择器)把它的显示状态改成了none。比如如果移动端地图的选择器是.container .mobile-map,而Web版的只是.web-map,那前者优先级更高,可能会意外影响到常规尺寸的显示。地图脚本加载逻辑异常
有时候不是CSS的问题,而是地图初始化脚本的逻辑错误。比如你是不是只在屏幕≤767px时才触发了Web版地图的加载?或者脚本里的尺寸判断写反了,导致常规尺寸下没有加载地图资源?可以检查初始化代码,看看是否在屏幕宽度≥768px时也能正常执行地图加载逻辑。元素被遮挡或透明度/可见性设置异常
还有一种可能是Web版地图其实已经显示了,但被其他元素(比如全屏的遮罩层、导航栏)挡住了,或者被设置了opacity: 0;、visibility: hidden;这类属性——这两个属性会让元素不可见但仍占据空间,和display: none的表现不同。你可以用开发者工具的元素高亮功能,看看Web版地图的div是否存在于页面中,以及它的位置、宽高是否符合预期。
内容的提问来源于stack exchange,提问作者Overtime

