iphone5为例:
- 说的
640dp*1136dp
指的是物理像素,而实际上实际开发用的是逻辑像素(px,浏览器使用的抽象单位) - dp,pt:设备无关像素,是固定的,不像逻辑像素可大可小。
这两者的关系是用dpr:设备像素缩放比
1px = (dpr)平方*dp
以dpr=2举例:
平面上:1px = 4dp
长度来说:1px = 2dp
所以,iphone5声称的640dp*1136dp也就是实际开发的320px*568px
dpi & ppi
dpi:打印机每英寸可以喷的墨汁点
ppi:屏幕每英寸内有多少像素渲染,也就是单位英寸内的像素密度
以iPhone 5为例,需要用物理像素去算
ppi=[(1136² + 640²)/4 (英寸) ]开方 = 326ppi (视网膜retina屏幕,dpr大于 等于2)
ppi越高,像素数越高,图像越清晰(图像有更多的像素去渲染)
viewport
iOS:viewport是980px(在980px的视口上渲染无误,在移动端缩放)
Android:不确定,可能是1640,1200?
- layout viewport:布局viewport,980px
- visual viewport:度量viewport,缩放后的网页宽度
meta标签
|
|
div:320*568px, 默认viewport是980px,也就是320布局在980的页面上,只能显示一部分
最佳:
|
|
width=device-width 布局viewport=设备宽度
initial-scale=1 度量viewport = 布局viewport
document.body.clientWidth:320
window.innerWidth:320