我们在做移动端webapp的时候需要设置这么一段:

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

再配合媒体查询@media就可以写出适配各种手机端的页面了。但是,为什么就能够了呢?

网上查了很多资料,反复看了很多遍还是似懂非,知道看了知乎中一个问题的解答,茅塞顿开。

自己不明白三个点,其中viewport,width,device-width分别代表什么?

viewport浏览器的窗口,显示网页内容的区域。width指这个viewport即浏览器窗口宽度。

device-width设备独立像素,逻辑像素。听着很抽象,那就按照字面理解,设备的宽度,这个宽度就是我们css常写px概念是一样的。如电脑端的屏幕px宽度,手机的屏幕px宽度。它并不指像英寸,厘米这样的物理尺寸。这些都是手机厂商设的,出厂就设定了。之前一直有误区把device-width和物理尺寸对应起来,所以一直想不明白。

chrome:f12可以看到device-width

         

下面就简单说说下自己对下面代码的理解。

<meta name="viewport" content="width=device-width>

我们电脑上网一般都是全屏查看网页,这个全屏就是电脑的屏幕,电脑浏览器窗口=电脑屏幕区域。即viewport=device-width。但是手机浏览器窗口>手机屏幕区域。

以前手机浏览一些网页都要通过手指调整查看内容的区域。这样用户体验就不好。为了改善这样情况,手机手机厂家就给我想出了解决办法:

name="viewport" content="width=device-width

这个设置意思就指让手机浏览器的窗口等于手机屏幕大小。这样一来在手机上查看就跟我们在电脑上全屏看网页一样啦。

我们做手机端的网页宽度就是根据这个device-width写的。

见:https://www.cnblogs.com/tu-0718/p/9596894.html#undefined

网上看了很多资料,给的概念太多,建议看以下几篇文章就差不多了,不懂得多看多想就通。

https://www.jianshu.com/p/fb982ea8dce3

https://www.jianshu.com/p/bb76c606f0b4

https://www.zhihu.com/question/28082877

移动端viewport解惑的更多相关文章

  1. 【转】移动端viewport的使用

    web端网站转移至移动端页面,注意点如下: 1.首先引入viewport调整页面宽度 <meta name="viewport" content="width=de ...

  2. 移动端Viewport & 使用rem来开发移动端网站

    Viewport大神 无双 的精彩解释 具体参数各型号是否支持参见: http://www.cnblogs.com/2050/p/3877280.html#commentform 摘录: 移动设备上的 ...

  3. 移动端 viewport设置

    <meta name="viewport" content="" /> width [pixel_value | device-width] wid ...

  4. 移动端viewport模版

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta cont ...

  5. [总结]CSS/CSS3常用样式与web移动端资源

    CSS/CSS3常用样式与知识点 IE条件注释 条件注释简介 IE中的条件注释(Conditional comments)对IE的版本和IE非IE有优秀的区分能力,是WEB设计中常用的hack方法.条 ...

  6. 你可能不知道的viewport

    概述 前几天偶然看到一个pc端网页,发现用手机打开竟然同比缩放了,作为一个前端从业者,我自然想要弄清它到底是怎么缩放的.之后查了它的meta信息,css和js,发现没有任何兼容手机端的代码,那它到底是 ...

  7. web前端之移动端:知识汇

    移动前端自适应适配方法总结 移动端前端适配方案(总结) -- 面试重点 不要再问我移动适配的问题了 一.响应式布局: // Extra small devices (portrait phones, ...

  8. web开发中移动端适配

    这个话题有些复杂,说起来有些琐碎,因为和移动端适配相关的问题太多了. 1. 概念 1.1 设备像素 设备像素被称为物理像素,它是显示设备中一个最小的物理部件.每个像素可以根据操作系统设置自己的颜色和亮 ...

  9. 深入浅出 Viewport 设计原理

    Viewport 是 HTML5 针对移动端开发新增的一个 meta 属性, 它的作用是为同一网页在不同设备的呈现,提供响应式解决方案.这篇文章尝试通过循序渐进的方式,逐层探索 Viewport 的设 ...

随机推荐

  1. SAS拆分数据集

    2012年8月8日 主要是根据选取条件来进行拆分 1.根据行数来选: data test; set oldset; if _n_=10 then output; if id="001&quo ...

  2. Codeforces 959E. Mahmoud and Ehab and the xor-MST 思路:找规律题,时间复杂度O(log(n))

    题目: 解题思路 这题就是0,1,2...n-1总共n个数字形成的最小生成树. 我们可以发现,一个数字k与比它小的数字形成的异或值,一定可以取到k与所有正整数形成的异或值的最小值. 要计算n个数字的情 ...

  3. 乌班图 之 apt命令 及 VMware共享文件夹

    apt是Advanced Packaging Tool ,是Ubuntu下的一个安装包管理工具 大部分软件的安装.更新.卸载 都是利用apt命令来实现 直接在终端输入apt即可查阅命令的帮助信息 常用 ...

  4. VP相关

    1.485模块电平,如果是集成的IC模块,则发送低电平,接收高电平: 2.阀门程序移植至PLC注意事项: 1) 阀门程序中的变量厘清,移植过程中阀门程序中的模块有些用到了,有些没用到,所以这是变量也很 ...

  5. Oracle12C查询自建用户(非系统自带)

      select username from dba_users where INHERITED='NO';

  6. 3ds Max灯光教程之卧室灯光布局实例

    对于设计师来说要做好一张好的作品效果图包括很多比如:“造型.色彩搭配.灯光气氛.构图角度等等,上次给大家详细的分析了下产品渲染中摄像机的构图及原理.本期教程来跟大家讨论一下max场景灯光布局问题.以卧 ...

  7. oracle查询之null值转化

    函数coalesce(c1,c2,c3......cn);返回第一个不为null的值

  8. js的onclick和jq的click以及on和bind的区别

    onclick和click,只能静态绑定点击事件:bind的可以一次绑定多个事件(click/onmouseover等):on可以动态的绑定事件,当页面加载完成调用on即可

  9. linux 杀掉端口

    netstat -apn|grep 8184 tcp        0      0 0.0.0.0:8184            0.0.0.0:*               LISTEN    ...

  10. php7 memcache和memcached.so扩展

    php7安装memcache和memcached扩展 https://github.com/websupport-sk/pecl-memcache https://github.com/php-mem ...