小编kos*_*jer的帖子

如何覆盖设备像素比

我制作了一个响应式网站,可以在不同的屏幕分辨率下正常工作。我使用三种不同的媒体查询 - 从 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" />
Run Code Online (Sandbox Code Playgroud)

如果我在我的样式表文件中添加这样的东西

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { 
@viewport {
     max-zoom:50%;
     width:720px;
}
}
Run Code Online (Sandbox Code Playgroud)

它在 Chrome 的仿真模式下工作正常,但如果我在真正的手机上测试它就不行。

编辑:呜呼......我找到了一种用 JavaScript 做到这一点的方法。

document.querySelector("meta[name=viewport]").setAttribute('content', 'width=device-width, initial-scale='+(1/window.devicePixelRatio)+', maximum-scale=1.0, user-scalable=0');
Run Code Online (Sandbox Code Playgroud)

它读取设备像素比,然后设置initial-scale值。

css google-chrome resolution responsive-design pixel-ratio

7
推荐指数
1
解决办法
8474
查看次数