css 有几个不同的单位用于表示长度
一些设置 CSS 长度的属性有 width, margin, padding, font-size, border-width 等
长度有一个数字和单位组成如 10px, 2em, 等
数字与单位之间不能出现空格
如果长度值为 0,则可以省略单位
对于一些 CSS 属性,长度可以是负数
有两种类型的长度单位:相对和绝对
下表中的数字表示支持该长度单位的最低浏览器版本。
长度单位 | Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|---|
em, ex, %, px, cm, mm, in, pt, pc | 1.0 | 3.0 | 1.0 | 1.0 | 3.5 |
ch | 27.0 | 9.0 | 1.0 | 7.0 | 20.0 |
rem | 4.0 | 9.0 | 3.6 | 4.1 | 11.6 |
vh, vw | 20.0 | 9.0 | 19.0 | 6.0 | 20.0 |
vmin | 20.0 | 9.0* | 19.0 | 6.0 | 20.0 |
vmax | 26.0 | 不支持 | 19.0 | 不支持 | 20.0 |
Internet Explorer 9 通过不标准的名称 vm 来支持 vmin
相对长度单位指定了一个长度相对于另一个长度的属性
对于不同的设备相对长度更适用
单位 | 描述 |
---|---|
em | 它是描述相对于应用在当前元素的字体尺寸 所以它也是相对长度单位 一般浏览器字体大小默认为 16px,则 2em == 32px |
ex | 依赖于英文子母小 x 的高度 |
ch | 数字 0 的宽度 |
rem | 根元素(html)的 font-size |
vw | viewpoint width,视窗宽度,1vw = 视窗宽度的 1% |
vh | viewpoint height,视窗高度,1vh =视窗高度的 1% |
vmin | vw和vh中较小的那个 |
vmax | vw和vh中较大的那个 |
% |
区别在于使用 rem 为元素设定字体大小时,仍然是相对大小,但相对的只是 HTML 根元素
绝对长度单位是一个固定的值,它反应一个真实的物理尺寸
绝对长度单位视输出介质而定,不依赖于环境(显示器、分辨率、操作系统等)
单位 | 描述 |
---|---|
cm | 厘米 |
mm | 毫米 |
in | 英寸 (1in = 96px = 2.54cm) |
px * | 像素 (1px = 1/96th of 1in) |
pt | point,大约1/72英寸; (1pt = 1/72in) |
pc | pica,大约6pt,1/6英寸; (1pc = 12 pt) |
像素或许被认为是最好的 "设备像素"
其实像素长度和你在显示器上看到的文字屏幕像素无关
px 实际上是一个按角度度量的单位