最近无聊的很,买了本教材,学习响应式网站设计。

因为有多年css的编程基础,前面的媒介查询学的很顺利。当学到viewport这个mata标签的时候,教程讲的比较简单。

今天,百度了不少资料,基本搞清楚了这个概念。

1、viewport是针对移动终端而言的,最先由苹果公司提出,这不奇怪,移动终端,那苹果是老大。

2、viewport书写规则一般是这样的<meta name="viewport"  content="width=device-width,initial-scale=1.0,user-scalable=no" />

3、viewport的大体意思就是手机浏览网页时的可见区域。

4、由于网页通常是针对计算机屏幕设计的,宽度通常都在960px以上,手机怎么能放下呢?哪位说了,手机分辨率现在不也老大了么?也有900多。那好吧!

可问题是电脑和手机像素点不一样大,对应着放过来,结构和网页的整体面貌固然没变,但是字体呢?图像呢?不知道缩小了多少倍,谁能看得见?哪位又说了,不是可以用两个指头把手机屏幕放大吗?好吧,你又赢了。可你想过没有,此刻,又出现了新问题,讨厌的滚动条出现了,需要左右滑动屏幕才能找见内容。这可不是我想要的结果。

5、此刻,viewport出现了。

先耐住性子,听我讲另一个概念,不然一会儿又糊涂了。什么概念?就是css里经常用到的像素,即px。既然上面说了,电脑屏幕和手机屏幕像素点并不一样大,那么,当用手机终端打开网页的时候,px以那个为准哪?用手机打开,当然是以手机的更小的像素点为准了。这就是为什么字体变得特别小的原因。

又回到刚才的问题了。陷入死循环无解了吗?

人类的智慧是谁都无法阻挡的。

其实……,说了半天废话,真正想说的是,手机浏览器理解的px的大小也是电脑屏幕那么大。哪位有谁了,怎么可能呢?我也不知道,可事实好像就是这样,这里的机制我也没搞懂,但其中有一二叫做TdevicePiexRitio的参数很重要。这个参数的意思就是二者的比例。

6、据说,viewport还有几个呢。一个叫做layout viewport,还有一个叫做visual viewport,还有一个叫做ideal viewport。layout viewport即网页的原始大小,手机浏览器都有预置值。后来又出现了visual viewport,就是可见的浏览器窗口。  最重要的是这个ideal viewport,它实际上就是divice-width。

7、一旦设置了width为device-width,这时候,initial-scale参数就起作用了,缩放的标准就是device-width,党initial-scale=2的时候,viewport实际尺寸缩小了一半,即假若device-width为360px,那么,此刻,viewport仅有180px的宽度。也就是说,电脑上制作移动web的时候,只需要设计180px,页面就可以充满手机屏幕了。

关于viewport的更多相关文章

  1. CSharpGL(35)用ViewPort实现类似3DMax那样的把一个场景渲染到4个视口

    CSharpGL(35)用ViewPort实现类似3DMax那样的把一个场景渲染到4个视口 开始 像下面这样的四个视口的功能是很常用的,所以我花了几天时间在CSharpGL中集成了这个功能. 在CSh ...

  2. 移动WEB开发之viewport

    问题: 在codepen上写了一个响应式页面,调试的时候没有问题.结果放到网站上,在手机上打开之后竟然和在电脑中的布局是一样的.         查阅资料之后知道响应式布局应该有这样一句话:<m ...

  3. viewport理解

    viewport预备知识 dpr === dppx dpr:device pixel ratio 设备像素比 dppx:Number of dots per px unit 每像素有多少点 . 1dp ...

  4. 移动WEB viewport 相关知识

    了解移动web viewport的知识,主要是为了切图时心中有数.本文主要围绕一个问题:切图时怎样设置<meta name="viewport">相关参数?围绕这个问题 ...

  5. 理解SVG的viewport,viewBox,preserveAspectRatio

    万丈高楼平地起,基础很重要. viewport 表示SVG可见区域的大小,或者可以想象成舞台大小,画布大小. <svg width="500" height="30 ...

  6. 移动端开发viewport深入理解(转)

    一.viewport的概念   移动设备上的viewport就是设备的屏幕上能用来显示我们的网页的那一块区域,就是浏览器上用来显示网页的那部分区域,但viewport不局限于浏览器可视区域 的大小,它 ...

  7. 移动前端开发之viewport的深入理解

    在移动设备上进行网页的重构或开发,首先得搞明白的就是移动设备上的viewport了,只有明白了viewport的概念以及弄清楚了跟viewport有关的meta标签的使用,才能更好地让我们的网页适配或 ...

  8. HTML5开发手机应用--viewport的作用

    在用HTML5开发手机应用或手机网页时,<head>部分总会有如下一段代码,这段代码到底什么意思呢.在网上,大家会得到很多答案.我从网上搜集了部分介绍,整理一下,以留备用. <met ...

  9. 从viewport发现小米手机参数不一致

    想要在移动web领域有所深造的小伙伴,第一关要过的就是逻辑像素与设备像素之间的关系. 初入移动web,一定要搞懂的几个单位(DPI.PPI.DP.PX 的详细计算方法及算法来源是什么?): dip(d ...

  10. 移动开发viewport

    三种 viewport layout viewport:文档流的 css 宽度,是一个静态的值,使用 document.documentElement.clientWidth 获取,在meta中是 w ...

随机推荐

  1. HTML5系列二(标签元素、FileReader、拖放)

    nav元素的使用场合 页面中可以包含多个nav元素,通常情况下头部和尾部都会包含导航,这样提高了可访问性,访客能够清晰的将其辨认出来.nav元素是一个可以用来作为页面导航的链接组:其中的导航元素链接到 ...

  2. BZOJ1031: [JSOI2007]字符加密Cipher

    传送门 后缀数组模板题 //BZOJ 1031 //by Cydiater //2016.9.21 #include <iostream> #include <cstring> ...

  3. SMO推导和代码-记录毕业论文4

    SMO的数学公式通过Platt的论文和看这个博客:http://www.cnblogs.com/jerrylead/archive/2011/03/18/1988419.html,大概弄懂了.推导以后 ...

  4. C#------对SQLServer进行简单的增,删,改,查

    EF中的操作转载: http://www.cnblogs.com/mcgrady/archive/2015/03/21/4355282.html PSContext db = new PSContex ...

  5. llinux 查看自己的公网ip

    如何在LINUX服务器下查看公网IP地址,可以使用下面的方法: [root@web ~]#curl http://members.3322.org/dyndns/getip [root@web ~]# ...

  6. 20145212 《Java程序设计》第2周学习总结

    20145212 <Java程序设计>第2周学习总结 教材学习内容总结 第二周主要学习了Java的基本语法,在第一周熟悉了Java基本操作的基础上我们可以自行的利用这些语法编译具有实用价值 ...

  7. PHP file_get_contents设置超时处理方法

    从PHP5开始,file_get_content已经支持context了(手册上写着:5.0.0 Added the context support. ),也就是说,从5.0开始,file_get_c ...

  8. ElasticSearch之一——索引

    ElasticSearch索引 ElasticSearch 是一个分布式可扩展的实时搜索引擎,它建立在开源搜索引擎框架Apache Lucene基础上.ElasticSearch 不但包括了全文搜索功 ...

  9. Orchard源码分析(4.4):Orchard.Caching.CacheModule类

    概述 CacheModule也是一个Autofac模块.   一.CacheModule类 CacheModule将DefaultCacheManager注册为ICacheManager:       ...

  10. Jedis 例子(demo)大全

    第一步:到git下载jedis源码,如果你用maven或者gradle,那么直接下官方的即可,地址:https://github.com/xetorthio/jedis:如果你用ant,下载这个:ht ...