大家好,我是IT修真院郑州分院第一期的学员胡嘉杰,一枚正直纯洁善良的WEB前端程序员。

今天给大家分享一下,修真院官网CSS任务3,深度思考中的知识点——手机分辨率和网页中的PX是一回事吗?

1.背景介绍

在我们从设计人员那里拿到网页模板时经常要按照模板的尺寸进行网页的代码编写,

做出模板的样子来显示到不同的分辨率的设备上,

我们通常使用像素这个单位作为我们进行网页制作的单位,那么像素(px)和设备的分辨率之间是一样的概念吗?

又或者有什么不同?

2.知识剖析

2.1 分辨率的概念

索尼xzp

xz premium

小米6

分辨率(Resolution),是一个表示平面图像精细程度的概念,它通常是以横向和纵向点的数量来衡量的,

表示为水平点数垂直点数的形式,例如1366px768px。

分辨率的概念在具体的划分中,有分为显示分辨率、打印分辨率、扫描分辨率等概念。

显示分辨率:

显示器在显示图像时的分辨率,用点来衡量,在这里,点的概念其实就是物理像素。跟屏幕大小和显示部件的技术有关。

不同的设备,其图像基本单位是不同的,比如显示器的点距,可以认为是显示器的物理像素。 现在的液晶显示器的点距一般在0.25mm到0.29mm之间。而打印机的墨点, 也可以认为是打印机的物理像素,300DPI就是0.085mm,600DPI就是0.042mm。

不同屏幕的像素排列

注意:

我们通常所说的显示器分辨率,其实是指桌面设定的分辨率,而不是显示器的物理分辨率。 只不过现在液晶显示器成为主流,由于液晶的显示原理与CRT(阴极射线显像管)不同, 只有在桌面分辨率与物理分辨率一致的情况下,显示效果最佳,所以现在我们的桌面分辨率几乎总是与显示器的物理分辨率一致了。

打印分辨率:

直接关系到输出打印的图像或者文字质量的概念,

用DPI(dot per inch,每英寸点数,1英寸换算到公制是2.54cm)表示,即每英寸能够打印多少个点。 DPI原来是印刷上的记量单位,但随着数字输入,输出设备快速发展,大多数的人也将数字影像的解析度用DPI表示,但较为严谨的人可能注意到, 印刷时计算的网点(Dot)和电脑显示器的显示像素(Pixel)并非相同, 所以较专业的人士,会用PPI(Pixel Per Inch)表示数字影像的解析度,以区分二者。

我们通常讲的打印机分辨率是多少DPI,指的是"在该打印机最高分辨率模式下,每英寸所能打印的最多"理论"墨点数"。

扫描分辨率:

扫描分辨率是一种输入分辨率,而显示分辨率和打印分辨率都是输出分辨率。

我们在使用扫描仪扫描图形时可以根据需要调节扫描的精度,不像显示分辨率和打印分辨率是固定的或只有几种可选。 扫描分辨率也用dpi来表示,但它不像打印机那样垂直分辨率和水平分辨率是一致的,扫描仪的水平分辨率是垂直分辨率的一半。

PPI:Pixel per Inch,每英寸的像素数,衡量图像分辨率,也就是显示分辨率。

ppi计算公式

2.2 像素的概念

px,对于许多网页设计者来说,是最常用的CSS长度单位。然而,1px到底多长,恐怕没有多少人回答得上来。

CSS长度本身有绝对长度和相对长度的区分。

绝对长度:

cm——1cm是1/100米,而1米则大约是光在1秒钟内跑过距离的3亿分之一

pt——1pt是1/72英寸,而1英寸换算到公制是2.54cm。

相对长度:

em、ex,以及百分比,是相对长度。比如em相对于当前字体大小, 百分比则根据属性定义不同有不同涵义,例如margin的值如果是百分比,表示是相对于父元素的width。

然而,PX是什么?

一般而言,pixel(像素)是图像的基本采样单位。详细解释见维基像素条目。 所以它不是一个确定的物理量,也不是一个具体的点或者小方块(尽管可以用点和小方块来呈现),而是一个 抽象概念。

按照CSS规范的定义,CSS中的px是一个相对长度,它相对的,是viewing device的分辨率。 这个viewing device,通常就是电脑显示器。典型的电脑显示器的分辨率是96DPI,也就是1像素为1/96英寸 (实际上,假设我们的显示器分辨率都与物理分辨率一致,而液晶点距其实是0.25mm到0.29mm之间, 所以不太可能是正好1/96英寸,而只是接近)。

一般来说,px就是对应设备的物理像素,然而如果输出设备的解析度与电脑显示器大不相同, 输出效果就会有问题。例如打印机输出到纸张上, 其解析度比电脑屏幕要高许多,如果不缩放,直接使用设备的物理像素, 那电脑上的照片由600DPI的打印机打出来就比用显示器看小了约6倍。

所以CSS规定,在这种情况下,浏览器应该对像素值进行缩放调节,以保持阅读体验的大体一致。 也就是要保持一定像素的长度在不同设备输出上看上去的大小总是差不多。

怎样确保这一点呢?直接按照设备物理像素的大小进行换算当然是一个方式, 但是CSS考虑得更多,它建议,转换应按照 “参考像素”(reference pixel) 来进行。

眼睛看到的大小,取决于可视角度。因此CSS规范使用视角来定义“参考像素”, 1参考像素即为从一臂之遥看解析度为96DPI的设备输出(即1英寸96点)时,1点(即1/96英寸)的视角。

请注意这个差别——CSS规范定义的参考像素并不是1/96英寸,而是1/96英寸在一臂之遥的看起来的视角。 通常认为常人臂长为28英寸,所以其视角可以计算出来是0.0213度。(即(1/96)in / (28in * 2 * PI / 360deg) )

我们在使用不同设备输出时,眼睛与设备输出的典型距离是不同的。比如电脑显示器, 通常是一臂之距,而看书和纸张时(对应于打印机的设备输出),则通常会更近一些。看电视时则会更远, 比如一般建议是电视机屏幕对角线的2.5到3倍长——如果你是个42'彩电,那就差不多是3米远。看电影的话……我就不知道多远了,您自己量吧。

因此,1参考像素: 对于电脑显示器是0.26mm(即1/96英寸); 对于激光打印机是0.20mm(假设阅读距离通常为55cm,即21英寸);

而换算时,对于300DPI的打印机(即每个点是1/300英寸), 1px通常会四舍五入到3dots,也就是0.25mm左右;而对于600DPI的打印机,则可能四舍五入到5dots,也就是0.21mm。

综上,px是一个相对单位,而且在特定设备上总是一个近似值(原则是尽量接近参考像素)。

3.常见问题

问题: 用代码编写的网页大小是如何显示到设备上的,展现相同效果的?

4.解决方案

这里要引入设备像素比(dpr)的概念,它定义了物理像素和设备独立像素之间的关系。

其公式表述为:设备像素比=物理像素/设备独立像素(在某一方向上,x方向或者y方向)。

我们还可以通过PPI/160来获得设备像素比。对于真实像素密度等于像素密度等级上的逻辑值的设备,1dp = 1/160 inch,对于不等于逻辑值的设备,比如上述表格第二个设备,180.27 != 160 这个差值 android 操作系统会进行等比缩放来弥补。比如在这个设备上用的 160dp 到最后真正在屏幕上用多少个像素表示呢,这其实经过了 2 个步骤:

dp 转程序中的 px,按照 dp 转 px 的公式,在设备上如果 160dp=160px,160dp 和我们程序里面用 160px 完全等价。

程序中的 px 转显示屏上的 px,程序中160px 在设备显示屏上用的是 180 px。160px -> 180px 这个过程是android操作系统自动完成的,我们不需要关心

5.编码实战

6.扩展思考

手机网页做成多大的比较合适?

7.参考文献

8.更多讨论

讨论点:

```

的工作原理?

腾讯视频:[https://v.qq.com/x/page/k05191yzgup.html](https://v.qq.com/x/page/k05191yzgup.html)

-----------------------------------------

技能树.IT修真院

“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧~

我的邀请码:[64290793](http://www.jnshu.com/login/1/90118367),或者你可以直接点击此链接:[http://www.jnshu.com/login/1/64290793](http://www.jnshu.com/login/1/90118367)

手机html像素,手机分辨率和网页中的PX是一回事吗?相关推荐

  1. 手机像素与分辨率的关系

    前几天弄的安卓app今天测试突然变慢了,巧了的是安卓手机出毛病了(180买的二手安卓机)不能ADB调试,更巧的是电脑安卓模拟器也打不开(网络适配器出问题了),Android studio运行不了deb ...

  2. Android中的手机屏幕像素的几种获取方式

    在Android开发中,获取手机屏幕像素的方法有多种.在这里,我仅仅做一个小小的总结,将这些方法分为两类.一类是使用Activity类来获取,另一类便是使用上下文(Context)来获取. 1.使用A ...

  3. 手机屏幕尺寸、分辨率,图像像素、分辨率、实际大小解惑

    [size=medium]本人常常被这些概念混淆,主要是没有好好的比较,没真正完全的搞清楚,这次做个详细点的比较. [b]手机屏幕尺寸[/b]:屏幕大小如2.1英寸,3.2英寸,3.7英寸等等,是指屏 ...

  4. 用计算机看手机照片大小,电脑手机怎么查看图片的尺寸(高、宽、像素)和分辨率 - 改图知识库...

    我们在网上上传图片时,很多网站对上传的图片有尺寸和文件大小的要求,比如"高200px像素.宽400像素,文件大小不超过200k",这时,我们就得知道自己的图片具体尺寸和文件大小是多 ...

  5. js手机键盘遮挡_完美解决手机网页中输入框被输入法遮挡的问题

    之前要做一个弹出对话框,填写信息,发现在手机上看的时候,较后的输入框在填写信息时,输入框被输入法遮挡,只能盲填. 前提 1.弹出的对话框用display:fixed定位的 2.对话框大小固定 解决办法 ...

  6. 在手机网页中使用USEMAP

    因为手机网页中图片大多数使用百分比显示 所以USEMAP的坐标错位 http://files.cnblogs.com/files/jweb/jquery.rwdImageMaps.min.js < ...

  7. 轻松实现网页中通过链接跳转到QQ聊天界面,通过链接加QQ群,自动打开聊天对话框等等,包含电脑版和手机版的实现,示例部分Android和iOS的代码

    通过链接打开对话框: 打开qq聊天窗口的方法 <a href="http://wpa.qq.com/msgrd?v=3&uin=1450612626&site=qq&a ...

  8. android会中病毒吗,安卓手机浏览网页中病毒几率多大

    手机病毒作为一种新兴类型病毒在现今手机用户中迅速发展,尤其是我国进入4G网络之后,高带宽的手机通信传输网络为手机病毒的.传播都供了温床.那么,安卓手机浏览网页中病毒几率多大那?就让佰佰安全网的小编和你 ...

  9. Android 嵌套H5 网页,图片上传无法调用手机图片以及嵌套网页中无法调用另一款APP问题记录

    最近项目中用到安卓原生APP 嵌套H5网页,使用安卓原生WebView实现,主要遇到以下两种问题,特此记录: 在H5页面,返回直接回到APP中 监听安卓的返回事件就行了 @Override publi ...

  10. 如何使用HtmlUnit 抓取网页中手机版模式?

    HtmlUnit 抓取网页中手机版模式? 方式方法: 地址要正确,体现在你抓取的页面是不是PC版 or 手机版模式的URL地址 PC 和 手机版的页面样式肯定也是不一样的,所以下载的样式要一致,包括页 ...

最新文章

  1. file not in the prep project
  2. Softmax 函数的特点和作用是什么?
  3. 实现透明渐变的Activity
  4. 专业计算机能力考试 技巧,全国专业技术人员计算机应用能力考试应试技巧
  5. freeRTOS V10.0.1移植到STM32F407标准库 - 环境Keil5
  6. Nginx配置https和wss
  7. 几张动态图弄懂递归,二叉树,二分查找简短算法
  8. echarts里面的参数解释_SPMSM控制:传统PI速度环参数的整定
  9. Codeforces 385 C Bear and Prime Numbers
  10. 【设计模式】之单例模式
  11. android实现控件的手势缩放、移动以及双击还原
  12. php超小免杀大马_PHP免杀大马的奇淫技巧
  13. 闲聊:Android 平台网络游戏加速器(二)
  14. ~0 为什么等于 -1 ,在C语言中?
  15. ACL 2017 录用论文整理(长文)
  16. PS cc 2018安装教程
  17. 小程序苹果手机底部出现横杠处理
  18. html 淡入淡出效果,css3 transition实现淡入淡出效果 - 小俊学习网
  19. 前沿科技赋能教育,掌门优课创新教学体验
  20. 基于BootStrap+Django+MySQL的云笔记平台系统

热门文章

  1. (转贴)联想员工亲历联想大裁员:公司不是家
  2. 特征值+SVD分解+伪逆(广义逆)
  3. AXI FULL协议学习与仿真
  4. 程序员面试的注意事项(一):面试的流程
  5. word文件太大如何压缩到最小?
  6. 天敏G10数位板安装完PS无压感,观看此教程
  7. 数学分析笔记4:一元函数微分学
  8. win8计算机图标快捷键,Win8电脑关机快捷键图标设置方法
  9. 如何清除PCB中负片层的死铜?
  10. 【数据挖掘算法】(一)MSET 算法