viewport的相关知识点

主要说一些viewport的基本原理以及使用浏览器

㈠概念iphone

手机浏览器是把页面放在一个虚拟的“窗口”(viewport)中,一般这个虚拟的“窗口”(viewport)比屏幕宽,这样就不用把每一个网页挤到很小的窗口中(这样会破坏没有针对手机浏览器优化的网页的布局),用户能够经过平移和缩放来看网页的不一样部分。移动版的 Safari 浏览器最新引进了 viewport 这个 meta tag,让网页开发者来控制 viewport 的大小和缩放,其余手机浏览器也基本支持。ide

移动端浏览器一般都在一个比屏幕更宽的虚拟窗口中渲染页面,这个虚拟窗口就是viewport,目的是正常展现没有作移动端适配的网页,可让他们完整的展示给用户。咱们有时用移动设备访问桌面版网页就会看到一个横向滚动条,这里可显示区域的宽度就是viewport的宽度。布局

 

㈡利用meta标签对viewport进行控制优化

咱们常常会见到这样一行代码:idea

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">spa

该meta标签的做用是让当前viewport的宽度等于设备的宽度,同时不容许用户手动缩放。scala

 

 如下为viewport的几个属性,这些属性能够混合来使用,多个属性同时使用要用逗号隔开3d

 

㈢width和initial-scalecode

当设置了widthinitial-scale时,浏览器会自动选择数值最大的进行适配。

如设置:

 <meta name="viewport" content="width=400, initial-scale=1">

浏览器会选择数值大的进行适配,若是当前窗口ideal viewport宽度为300,initial-scale值为1,取得是width为400的值;若是当前窗口的ideal viewport为480,则取480。

事实上,width=device-widthinitial-scale=1都表明应用ideal viewport,但在ipad、iphone等移动设备和IE上,横竖屏不分,默认都取竖屏的宽度,兼容性最好的写法就是<meta name="viewport" content="width=device-width, initial-scale=1">

 

总结:在iphone和ipad上,不管你给viewport设的宽的是多少,若是没有指定默认的缩放值,则iphone和ipad会自动计算这个缩放值,以达到当前页面不会出现横向滚动条(或者说viewport的宽度就是屏幕的宽度)的目的。

 

但愿有所帮助。
相关文章
相关标签/搜索