CSS 单位
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 与 em 有什么区别呢?
区别在于使用 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 实际上是一个按角度度量的单位