对于绘图和印刷而言,“单位”相当重要,然而在网页排版里,单位也是同样具有重要性,在CSS3普及以来,更支持了一些方便好用的单位(px、em、rem…等),这篇文章将整理这些常用的CSS单位,也帮助自己未来在使用上能更加得心应手。

“网页”和“印刷”的单位
若要把单位做区隔,最简单可以分为“网页”和“印刷”两大类,通常对于CSS来说只会应用到网页的样式,毕竟真正要做印刷,还是会倾向透过排版软件来进行设计。

网页(单位)

  • px:绝对单位,代表屏幕中每个「点」(pixel)。
  • em:相对单位,每个子元素透过「倍数」乘以父元素的px值。
  • rem:相对单位,每个元素透过「倍数」乘以根元素的px值。
  • %:相对单位,每个子元素透过「百分比」乘以父元素的px值。

网页(属性名称)

  • medium:于16px(h4预设值)
  • xx-small:medium的0.6倍(h6预设值)
  • x-small:medium的0.75倍
  • small:medium的0.8倍(h5预设值,W3C定义为0.89,实测约为0.8)
  • large:medium的1.1倍(h3预设值,W3C定义为1.2,实测约为1.1)
  • x-large:medium的1.5倍(h2预设值)
  • xx-large:medium的2倍(h1预设值)
  • smaller:约为父层的80%
  • larger:约为父层的120%

印刷

  • pt:打印机的每个「点」,定义为1 pt=1/72 in,如果在72 dpi的系统上1 px = 1 pt,但如果在96dpi的系统上1 px = 0.75 pt(72/96 = 0.75)。
  • in:英寸,在96 dpi的系统上1 in = 96 px。
  • cm:厘米,在96 dpi的系统上1 cm = 37.795275593333 px。
  • mm:毫米,在96 dpi的系统上1 cm = 3.7795275593333 px。

对web前端这门技术感兴趣的小伙伴可以加入到我们的学习圈来,工作第六个年头了,与大家分享一些学习方法,实战开发需要注意的细节。767-273-102 秋裙。从零基础开始怎么样学好前端。都是一群有梦想的人,我们可能在不同的城市,但我们会一起结伴同行前端前端前端

示例展示
以下将展示四种不同单位的示例,为公平起见,四个示例都套用预设的div格式,纯粹改变font-size看看有何不同,由于子元素若没有设定font-size,会自动继承父元素的font-size,使用上就应该要预先初始化字体大小,下面这两段CSS可以将所有的元素字体大小预设为16px,然后可个别进行调整。

web前端开发学习Q-q-u-n: 767273102 ,分享学习的方法和需要注意的小细节,不停更新最新的教程和学习方法(详细的前端项目实战教学视频)
html{font-size:16px;
}html * {font-size: 1rem;
}

1. px
px是绝对单位,因此只要设定多少px,就会精确的呈现,对于一些讲求精准位置的排版而言十分有用,如示例表示的,指定多大px字体就会多大。

<div style="font-size:16px;">16px<div style="font-size:20px;">20px<div style="font-size:24px;">24px<div style="font-size:16px;">16px<div style="font-size:32px;">32px</div></div></div></div>
</div>

2. em
em是相对单位,为每个子元素透过“倍数”乘以父元素的px值,如果我们每一层div都使用1.2em,最内层就会是16px x 1.2 x 1.2 x 1.2 x 1.2 x 1.2 = 39.8px。(浏览器预设字体大小为16px,若无特别指定则会直接继承父元素字体大小)

<div style="font-size:1.2em;">1.2em<div style="font-size:1.2em;">1.2em<div style="font-size:1.2em;">1.2em<div style="font-size:1.2em;">1.2em<div style="font-size:1.2em;">1.2em</div></div></div></div>
</div>

3. rem
rem是相对单位,为每个元素透过“倍数”乘以根元素的px值,如果我们每一层div都使用1.2rem,最内层就会是16px x 1.2 = 19.2px。(根元素指的是html的font-size,预设为16px)

<div style="font-size:1.2rem;">1.2rem<div style="font-size:1.2rem;">1.2rem<div style="font-size:1.2rem;">1.2rem<div style="font-size:1.2rem;">1.2rem<div style="font-size:1.2rem;">1.2rem</div></div></div></div>
</div>

4. %
%百分比是相对单位,和em大同小异,简单来说em就是百分比除以一百,如果我们每一层div都使用120%,就等同于1.2em,最内层就会是16px x 1.2 x 1.2 x 1.2 x 1.2 x 1.2 = 39.8px。

<div style="font-size:120%;">120%<div style="font-size:120%;">120%<div style="font-size:120%;">120%<div style="font-size:120%;">120%<div style="font-size:120%;">120%</div></div></div></div>
</div>

5.small、medium、large…等
字体大小的属性有七种,分别是xx-small、x-small、small、medium、large、x-large和xx-large,除了x-small,其余六种分别对应h6~h1的标签文字大小,根据W3C的规范,以medium预设16px为基础(若html字体预设大小改变,medium也会跟着变),使用固定的百分比乘以medium的大小,例如ss-small预设为16px x 0.6 = 9.6px(浏览器显示为12px)。

<div style="font-size:xx-small;">xx-small<div style="font-size:x-small;">x-small<div style="font-size:small;">small<div style="font-size:medium;">medium<div style="font-size:large;">large<div style="font-size:x-large;">x-large<div style="font-size:xx-large;">xx-large</div></div></div></div></div></div>
</div>

6. larger、smaller
larger和smaller就是固定百分比为单位,larger为父层的120%,smaller为父层的80%。

web前端开发学习Q-q-u-n: 767273102 ,分享学习的方法和需要注意的小细节,不停更新最新的教程和学习方法(详细的前端项目实战教学视频)<div style="font-size:medium;">medium<div style="font-size:larger;">larger<div style="font-size:larger;">larger<div style="font-size:larger;">larger<div style="font-size:smaller;">smaller<div style="font-size:smaller;">smaller<div style="font-size:smaller;">smaller</div></div></div></div></div></div>
</div>

小结
熟悉了字体大小单位之后,就更能有系统的设计整个网站的CSS构架,不过font-size本身和font-family有着一些复杂的关系,不同的font-family有时也会影响font-size的设定,因此使用上还是得稍微注意一下啰!

web前端入门到实战:CSS中字体单位:px、em、rem和%相关推荐

  1. html前端页面的基本骨架是,web前端入门到实战:css实现的骨架屏方案

    web前端入门到实战:css实现的骨架屏方案 发布时间:2020-08-04 01:32:03 来源:51CTO 阅读:152 作者:前端向南 优点 简单,不需要工程,不用puppeteer生成骨架d ...

  2. 转圈加载html,web前端入门到实战:纯CSS实现加载转圈样式

    web前端入门到实战:纯CSS实现加载转圈样式 发布时间:2020-05-27 18:11:33 来源:51CTO 阅读:134 作者:前端向南 不同的项目中对于等待加载时转圈圈的样式是不同的,有的是 ...

  3. css中的单位换算_css大小单位px em rem的转换和详解

    css大小单位px em rem的转换和详解 PX特点 1. IE无法调整那些使用px作为单位的字体大小: 2. 国外的大部分网站能够调整的原因在于其使用了em或rem作为字体单位: 3. Firef ...

  4. CSS单位--px,em,rem,rpx区别

    国内的设计师大都喜欢用px,而国外的网站大都喜欢用em和rem,那么三者有什么区别,又各自有什么优劣呢? Px PX特点 1. IE无法调整那些使用px作为单位的字体大小: 2. 国外的大部分网站能够 ...

  5. web前端入门到实战:css中border-style 属性

    border-style 属性用于设置元素所有边框的样式,或者单独地为各边设置边框样式.只有当这个值不是 none 时边框才可能出现. 例子 1 border-style:dotted solid d ...

  6. html中怎么做彩虹,web前端入门到实战:纯CSS画动态彩虹

    效果 效果图如下 实现思路 使用box-shadow画赤橙黄绿蓝靛紫7个弧形,拼接在一起 after伪元素写投影样式 彩虹和投影都有动画 dom结构 用两个嵌套的div容器,父容器来控制图标显示的位置 ...

  7. web前端入门到实战:css伪元素::after和::before,及图标字体的使用

    css中的::after和::before已经被大量地使用在我们日常开发中了,使用他们可以使我们的文档结构更加简洁.但是很多人对::after和::before仍不是特别了解,究竟他们是做什么的?如何 ...

  8. web前端入门到实战:CSS实现平行四边形布局效果

    如何实现下图所示的平行四边形布局效果? 一.skewX的局限 一提到平行四边形,条件反射般的就会想起CSS transform中的skew()/skewX()/skewY()方法,可以让元素斜切,从而 ...

  9. web前端入门到实战:CSS颜色、背景和剪切

    颜色 CSS 中可以改变文字的颜色还有元素的背景颜色.可以用颜色关键字来定义颜色,如red,但是这些颜色关键字并不常用. transparent transparent可以让文字或背景变的完全透明的颜 ...

最新文章

  1. 单例模式的两种实现方式对比:DCL (double check idiom)双重检查 和 lazy initialization holder class(静态内部类)...
  2. 保护个人信息安全之法律思考
  3. Nginx教程系列五:Nginx+Keepalived搭建高可用主从架构
  4. Express中错误处理中间件的使用
  5. 时间、时间戳相关小结 - iOS
  6. Nacos-Nacos和Eureka的对比
  7. 页面无法滚动_【前端词典】滚动穿透问题的解决方案
  8. 自旋锁和互斥锁实例_多线程编程之自旋锁
  9. B程序员:讲述三年计算机学习辛酸史
  10. Docker小结(五)
  11. 一文带你认识队列数据结构
  12. mysql中php编程实例_PHP连接MYSQL数据库实例代码
  13. c++ 异常处理(3)
  14. 因VPU预留内存太小造成的视频播放太卡
  15. Codeforces Round #102 (Div. 1) D Help Shrek and Donkey 2
  16. Java 反射 面试题
  17. android qq 登陆 简书,第三方登录 — QQ登录
  18. 芯烨Xprinter XP-D3601B 打印机驱动
  19. Angular导入导出Excel控件简介
  20. 哔哩哔哩谷歌浏览器助手Mac版分享来了

热门文章

  1. 基于LEACH和HEED的WSN路由协议研究与改进(Matlab代码实现)
  2. C2280 “std::_Uhash_compare<_Kty,_Hasher,_Keyeq>......尝试引用已删除的函数
  3. 理财U21 融资租赁 习题解读
  4. 微信小程序实现界面之间的跳转
  5. docker-compose 在创建的时候抛异常
  6. Golang依赖管理工具:glide从入门到精通使用
  7. 中望CAD2015版网络版激活端口号
  8. RFE递归式特征消除
  9. UML建模——使用EA工具开发时序图实践及经验
  10. sql相同顺序法和一次封锁法_下面哪个方法是诊断死锁的方法( )。_学小易找答案...