我制作了一个响应式网站,可以正常使用不同的屏幕分辨率。我使用三种不同的媒体查询 - 从0到640,从640到960及以上。无论如何,如果我尝试打开使用720x1280的三星Galaxy Note2,因为它的像素比率为2,它将网站读作360x640设备,但具有640-960样式。
如何确定网站将以原始分辨率显示?
我将其包含在标题中:
<meta name="viewport" content="width=720, initial-scale=1, maximum-scale=1, user-scalable=no" />
如果我在样式表文件中添加这样的内容
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
@viewport {
max-zoom:50%;
width:720px;
}
}
它可以在Chrome的仿真模式下正常运行,但如果我在真实手机上进行测试则不行。
编辑: Woo-hoo ......我找到了一种方法来使用JavaScript。
document.querySelector("meta[name=viewport]").setAttribute('content', 'width=device-width, initial-scale='+(1/window.devicePixelRatio)+', maximum-scale=1.0, user-scalable=0');
它读取设备像素比率,然后设置initial-scale
值。
答案 0 :(得分:0)
我没有对此进行过测试,但请尝试更改:
<meta name="viewport" content="width=720, initial-scale=1, maximum-scale=1, user-scalable=no" />
到
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
将宽度设置为720可以解释为什么要应用640-960样式。