三种像素的概念

html-css012

三种像素的概念,第1张

物理像素 :物理像素又被称为设备像素,他是显示设备中一个最微小的物理部件。每个像素可以根据操作系统设置自己的颜色和亮度。

设备独立像素 :设备独立像素也称为密度无关像素,这个概念可能有点抽象,大家可以这么来理解  iPhone6的尺寸是375X667 这就可以理解为设备独立像素

设备像素比(dpr) :设备像素比简称为dpr,其定义了物理像素和设备独立像素的对应关系。

css像素 :CSS像素是一个抽像的单位,主要使用在浏览器上,用来精确度量Web页面上的内容。一般情况之下,CSS像素称为与设备无关的像素(device-independent pixel),简称DIPs。在不同的屏幕上,CSS像素所呈现的物理尺寸是一致的,而不同的是CSS像素所对应的物理像素具数是不一致的。在普通屏幕下1个CSS像素对应1个物理像素,而在Retina屏幕下,1个CSS像素对应的却是4个物理像素。

物理像素 : 也是 设备像素 , 单位是 pt ,绝对单位。1pt就是一个会发光的点。设备出厂的时候就已经确定, 不会再改变。在我们的常识中反应为 分辨率 ,例如 1920 * 1080 分辨率指的就是这个设备有 1920*1080 个 pt

css 像素 : 设备独立像素, 逻辑像素。代表了可以通过程序控制的像素。

px 是一个相对单位。大小会随着屏幕物理特性的改变,而变得不确定。 css 像素的大小由物理像素所决定。 例如打印机的物理像素是一个墨点的大小。用户的缩放也会改变 css 像素在屏幕上的表现。

屏幕尺寸 : 对角线的长度。 1inch =2.54cm . 屏幕尺寸 = 屏幕对角线经过的像素数量 / PPI(pixel per inch ) **注意是 1inch 面积上的像素数量 **。

PPI : 固定的参数。 PPI 越大, 屏幕越清晰。 PPI 翻一倍,容纳像素量提升 四倍 。像素所占大小缩小为 1/4

720P : 1280 * 720

1080P : 1920 * 1080

4K : 4096 * 2160

5K : 5120 * 2880

像素比 : DPR = 物理像素 / css像素 。它反映了一个css像素, 占据多少个物理像素。 可以使用 window.devicePixelRatio 获取。

像素即px,盒模型中的长度单位,除了px还有,em,pt,ex,pc,in,mm,cm。

px:像素(Pixel),相对于设备的长度单位,像素是相对于显示器屏幕分辨率而言的。譬如,WONDOWS的用户所使用的分辨率一般是96像素/英寸。而MAC的用户所使用的分辨率一般是72像素/英寸。

em:相对长度单位。相对于当前对象内文本的字体尺寸。如当前行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。

ex:相对长度单位。相对于字符“x”的高度。此高度通常为字体尺寸的一半。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。

pt:点(Point),绝对长度单位。

pc:派卡(Pica),绝对长度单位。相当于我国新四号铅字的尺寸。

in:英寸(Inch),绝对长度单位。

mm:毫米(Millimeter),绝对长度单位。

cm:厘米(Centimeter),绝对长度单位。

其中:1in = 2.54cm = 25.4 mm = 72pt = 6pc ;

容器的大小我们经常用px做单位,大家都没什么异议,字体大小(font-size)很多国内的人使用px做单位,其实用px做字体单位唯一的致命缺点就是在IE下无法用浏览器字体缩放的功能。或者以前的按住Ctrl+滚动鼠标的中间的滚轮。

所以多人建议使用html em单位,对于用惯了px的人用em肯定不是很方便,这里提供一些转换公式和对照表供大家参考:

px to em:Example: 12px / 16px = .75em

px to %:Example: 12px / 16px * 100 = 75%

px to pt:Example: 16px * 72 (72 points = 1 inch) / 96 (96 pixels per inch in Windows, 72 in Mac) = 12pt

em to px:Example: .75em * 16px = 12px

em to %:Example: .75em * 100 = 75%

% to px:Example: 75 * 16px / 100 = 12px

% to em:Example: 75 / 100 = .75em

pt to px:Example: 12pt * 96ppi / 72ppi = 16px