对于我当前的移动 Web 项目,我使用元“视口”标签来指示移动浏览器使用 1:1 的比例与设备的宽度:
<meta name="viewport" content="initial-scale=1.0, width=device-width, height=device-height, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" />
这适用于 IE mobile、iPhone Safari 甚至 Opera 10 beta,但不适用于 Opera 9.7,它默认安装在 HTC HD2 上。HTC HD2 的设备尺寸为 480x800,因此在纵向模式下视口的宽度应为 480。但显然 Opera mobile 9.7(也许还有 9.5)设置了错误的宽度,所以之后一切都被放大了一点。我使用了一个简短的 javascript 片段来检查实际的窗口大小:
$(window).width() -> 返回 274
window.innerWidth -> 返回 480
当我硬编码 480 而不是“设备宽度”时,一切正常。横向模式也一样:
$(window).width() -> 返回 457
window.innerWidth -> 返回 800
有什么解决方法吗?
问候