关于viewport的概念:
web
先了解移动设备的屏幕尺寸和设备尺寸:spa
iPhone3 设备尺寸 320*480 ; 屏幕尺寸 320*480scala
iPhone4 设备尺寸 320*480 ; 屏幕尺寸 640*960code
iPhone5 设备尺寸 320*568 ; 屏幕尺寸 640*1136blog
从iPhone3到iPhone4,设备尺寸没变的状况下,屏幕尺寸放大了一倍;viewport也应运而生,即屏幕尺寸。get
示例:it
<meta name="viewport" content="..." />
关于 viewport 参数定义:class
<meta name=”viewport” content=” height = [pixel_value | device-height] , width = [pixel_value | device-width ] , initial-scale = float_value , minimum-scale = float_value , maximum-scale = float_value , user-scalable = [yes | no] , target-densitydpi = [dpi_value | device-dpi | high-dpi | medium-dpi | low-dpi] />
width、height: 能够定义值,或者 device-width | device-height 设备的宽高meta
initial-scale: 初始缩放比例,即页面第一次 load 的时候缩放比例。这是一个浮点值,是页面大小的一个乘数。例如,若是你设置初始缩放为“1.0”,那么,web页面在展示的时候就会以target density分辨率的1:1来展示。若是你设置为“2.0”,那么这个页面就会放大为2倍。float
maximum-scale:容许用户缩放到的最大比例。这也是一个浮点值,用以指出页面大小与屏幕大小相比的最大乘数。例如,若是你将这个值设置为“2.0”,那么这个页面与target size相比,最多能放大2倍。
minimum-scale:容许用户缩放到的最小比例。
user-scalable:用户是否能够手动缩放,若是设置为yes则是容许用户对其进行改变,反之为no。默认值是yes。
全部的缩放值都必须在0.01–10的范围以内。
例:
1.设置屏幕宽度为设备宽度,禁止用户手动调整缩放;
2.设置屏幕密度为高频,中频,低频自动缩放,禁止用户手动调整缩放。
maximum-scale都将被忽略,由于根本不可能缩放。
target-densitydpi:
一个屏幕像素密度是由屏幕分辨率决定的,一般定义为每英寸点的数量(dpi)。Android支持三种屏幕像素密度:低像素密度,中像素密度,高像 素密度。一个低像素密度的屏幕每英寸上的像素点更少,而一个高像素密度的屏幕每英寸上的像素点更多。Android Browser和WebView默认屏幕为中像素密度。
target-densitydpi 属性的取值范围