060. CSS 单位

1. 长度(length)单位

长度单位主要分为两种,相对和绝对。

  • 相对长度单位 基于其它元素的长度。例如 em 基于该元素的字号大小,vh 则与设备视口的高度有关。

  • 绝对长度单位 则是一个固定的物理长度。

1.1 ch 单位

相对单位,该单位代表 0 的宽度。即 1ch 就是 1 个 0 的宽度(非高度)。

也就是说 2ch 宽度的容器,只能装下两个 0。

<div class="ch-units">00000000</div>
.ch-units {
  width: 5ch;
  height: 5ch;
  font-size: 12px;
  background-color: yellow;
}

因为 ch 是相对宽度,并且是根据 0 的宽度变化而变化,所以改变 0 的字体大小,ch 的宽度也会发生变化。

如下图右侧是 12px 的字体大小,5ch 宽度是 36px

5ch-12px

如下图右侧是 14px 的字体大小,5ch 宽度是 42px

5ch-14px

ch 还有如下规则:

1ch = 1 个英文 = 1 个数字 2ch = 1 个中文

1.2 ex 单位

相对单位,该单位表示小写字母 "x" 的高度,即 1ex 就是 1 个 "x" 的高度。

通常来说,1ex ≈ 0.5em

<div class="ex-units">xxxxxxxx</div>
.ex-units {
  width: 5ex;
  height: 5ex;
  font-size: 12px;
  background-color: blue;
}

1.3 em 单位

相对单位,em 单位最多可以设置三位小数。

  • 元素的字体大小设置 em 是相对于父元素的字体大小,即父元素 16px,子元素的字体大小 2em = 2 * 16px = 32px

  • 元素的 width height padding mariginem 为单位,则是相对于该元素的 font-size,即如果元素的字体大小是 12px,则 width = 2em = 2 * 12px = 24px(元素如果未设置字体大小,则继承父元素字体大小)。

<div class="em-units">emmmmmmm</div>
.em-units {
  width: 5em;
  height: 5em;
  font-size: 2em;
  background-color: pink;
}
em-unit

如上所示,div 的字体大小计算结果是 32px,Chrome 浏览器默认字体大小是 16px,所以其父元素默认是 16px,所以该元素的字体大小 2em = 16px * 2 = 32px,然后宽高是以当前元素的字体大小计算的,前面得出当前元素的字体大小计算为 32px,所以宽高 5em 就是 32px * 5 = 160px

1.4 rem 单位

相对单位,1 rem 与等于根元素(<html>) font-size 的计算值。

<html> 节点的字体大小 font-size: 16px,则 1rem = 16px,以此类推。

1.5 vhvwvminvmax 视口单位(Viewport units)

相对单位。

在桌面端,视口指的是浏览器的可视区域;在移动端,指的视布局视口(Layout Viewport)。

  • vw : 1vw 等于视口宽度的 1%,也即视口的宽度可以用 100vw 表示

  • vh : 1vh 等于视口高度的 1%,,也即视口的高度可以用 100vh 表示

  • vmin : 选取 vw 和 vh 中最小的那个

  • vmax : 选取 vw 和 vh 中最大的那个

假设浏览器的视口尺寸宽度为 1080px,那么 1vw = 1080px * 1% = 108px。

1.6 px 单位

绝对单位。一像素(pixel)。对于普通的屏幕,通常是一个设备像素(点)。

对于打印机和高分辨率屏幕,一个 CSS 像素往往占多个设备像素。

一般来说,每英寸的像素的数量保持在 96 左右, 1px = 1in 的 96 分之一。

1.7 cm mm in 单位

绝对单位。

一厘米。 1cm = 96px / 2.54

一毫米。 1mm = 1/10 * 1cm

一英寸。 1in = 2.54cm = 96px

2. 角度(angle)单位

角度单位主要在 <gradient>transform 的某些方法等场景中有所应用。

角度单位可以使用 + 或 - 开头。正数表示顺时针的角,负数表示逆时针的角。对于静态的角,同样的角度可以使用任意等效的值表示。

比如 90deg 等于 -270deg,1turn 等于 4turn。

2.1 deg 单位

度。一个完整的圆是 360deg。例:0deg90deg14.23deg

2.2 grad 单位

百分度。一个完整的圆是 400grad。例:0grad100grad38.8grad

2.3 rad 单位

弧度。一个完整的圆是 弧度,约等于 6.2832rad。1rad 是 180/π 度。例:0rad1.0708rad6.2832rad

2.4 turn 单位

圈数。一个完整的圆是 1turn。例:0turn0.25turn1.2turn

换算如下:

零角:0 = 0deg = 0grad = 0turn = 0rad

直角:90deg = 100grad = 0.25turn ≈ 1.5708rad

直角(逆时针):-90deg = -100grad = -0.25turn ≈ -1.5708rad

平角:180deg = 200grad = 0.5turn ≈ 3.1416rad

3. 时间(time)单位

主要在 animationtransition 及相关属性中使用。

3.1 s 单位

以秒为单位的时间。 例: 0s, 1.5s, -60s。

3.2 ms 单位

以毫秒为单位的时间。例: 0ms, 150.25ms, -60000ms。

1s = 1000ms

4. 分辨率(resolution)单位

用于描述媒体查询中的分辨率的 CSS 数据类型表示输出设备的像素密度。 在屏幕上,单位与 CSS 英寸,厘米或像素有关,而与物理值无关。

4.1 dpi 单位

表示每英寸的点数。屏幕通常每英寸包含 72 或 96 个点,但打印文档的 dpi 通常要大得多。 1 英寸是 2.54 厘米,1dpi ≈ 0.39dpcm

4.2 dpcm 单位

每厘米上的点数。1 英寸是 2.54 厘米, 1dpcm ≈ 2.54dpi.

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,029评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,238评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,576评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,214评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,324评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,392评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,416评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,196评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,631评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,919评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,090评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,767评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,410评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,090评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,328评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,952评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,979评论 2 351

推荐阅读更多精彩内容

  • 在本章中,我们就来关注下所有CSS里面的值和单位,这是基础中的基础。通过学习,那么你学习后面的内容将会更加得心应手...
    秋名山车神12138阅读 1,679评论 0 0
  • 单元名称相当于cm公分1厘米= 96px / 2.54mm毫米1mm = 1厘米的1/10Q四分之一毫米1Q = ...
    WhiteStruggle阅读 632评论 0 1
  • 一、长度单位 1.1 绝对单位 absolute units 1.1.1 px pixel 像素是一个绝对单位,这...
    loster阅读 2,080评论 0 0
  • 本文主要讲述页面布局样式方面涉及的知识点,更全面的对CSS相应的技术进行归类、整理、说明,没有特别详细的技术要点说...
    Joel_zh阅读 850评论 0 1
  • 论CSS常用单位的前世今生 目录: 一、---------------------------浅析CSS的组成 二...
    Marting424阅读 2,824评论 0 3