admin管理员组

文章数量:1614169

最近做了一个网站,发现在Android平板浏览器下访问,分辨率并不是设备自己的像素。我用的是华为荣耀平板,设备实际的分辨率是1280x800,但是我用js测算出来的document.body.clientWidth只有980px。

说明Android下浏览器默认的并不是实际像素,而是中像素密度。(注:Android支持三种屏幕像素密度:低像素密度,中像素密度,高像素密度)

为了防止Android Browser和WebView根据不同屏幕的像素密度对你的页面进行缩放,就要在网页里加上一段代码,控制网页展示的分辨率。

这里面,target-densitydpi的功能就是指定屏幕像素密度DPI。它的参数有:

device-dpi –使用设备原本的 dpi 作为目标dpi。不会发生默认缩放。

high-dpi – 使用hdpi作为目标dpi。中等像素密度和低像素密度设备相应缩小。

medium-dpi – 使用mdpi作为目标dpi。 高像素密度设备相应放大, 像素密度设备相应缩小。这是默认的target density。

low-dpi -使用mdpi作为目标dpi。中等像素密度和高像素密度设备相应放大。

– 指定一个具体的dpi值作为target dpi。这个值的范围必须在70–400之间。

本文标签: 像素分辨率浏览器网页设备