viewport 设置后页面在手机上还是缩放异常怎么办?
我给移动端页面加了 viewport meta 标签,但某些安卓机上打开还是显示特别小,像是没生效一样。明明写了 width=device-width,难道还要配合 CSS 做什么处理?
这是我现在用的 CSS:
html {
font-size: 16px;
}
body {
margin: 0;
padding: 0;
width: 100%;
overflow-x: hidden;
}
.container {
max-width: 375px;
margin: 0 auto;
}
是不是 container 的 max-width 导致的问题?或者 viewport 还缺了什么参数?试过 initial-scale=1 但好像也没改善。
首先,viewport meta标签要写完整,光有 width=device-width 有时候不够。建议改成这样:
你之前说试过 initial-scale=1 但没改善,那可能是标签本身没写对地方,或者页面其他地方有冲突。
然后说你那个CSS的问题。html { font-size: 16px; } 这个其实可能是罪魁祸首!某些安卓机(尤其是老版本)会根据html的font-size来计算它认为的"合适宽度",你设了16px,它可能就按这个去算viewport了。
可以试试把html的font-size去掉,或者改成100%,让浏览器自己判断:
html {
font-size: 100%;
}
或者干脆删掉这行。
另外,container的max-width: 375px不会导致页面缩小,这个锅它不背。
总结一下,你改成完整的viewport标签,然后把html的font-size改一下,基本就能解决。改完清一下缓存再测试,安卓机缓存坑死人的。