em和rem笔记

简单介绍

单位

在编写网页过程中,需要对元素(标签)进行宽高、颜色、字体等的设置,这些需要使用单位。
在css中,设置字体和宽高使用的单位可以一致,例如:px / em / rem / ...

rem来源

rem是css3中的单位。

和px关系

px 是使用最多的单位。
em和rem可以和px单位进行换算,就比如“克”和“千克”可以换算一样。
具体换算如下。

建议

在做移动端项目的时候,建议使用 rem 作为单位
可以方便、快捷、容易的实现响应式效果

em详细说明

em参照父级元素字体的大小

如果父级元素 font-size:20px;, 给子元素设置字体 font-size:1em;, 子元素其实就是 20px 的大小。

示例:

  • 如果1em = 20px;
  • 2em = 40px;
  • 2.5em = 50px;
  • 0.5em = 10px;

em 合适的使用场景:text-index(首行缩进)/line-height(行高)

rem详细说明

rem参照的是根元素即 html标签字体的大小。

rem 和 em 不同点就是 em参照各自的父级元素,如果父级元素没有设置字体大小,则继续向上级查找(父父级元素),直至最后
rem直接参照html标签的大小,并且是所有使用rem单位的都是参照html标签。所以,只需要修改 html标签字体的大小,就可以影响全部使用rem单位的标签

代码实例:

html{
    font-size:100px;
}
.title{
    width:5rem;/*500px*/
    height:5rem;/*500px*/
    font-size:.3rem;/*30px*/
}

在做响应式网站时,可以根据媒体查询去调节 html 标签字体的大小,实现共同调节其它标签大小的效果

使用媒体查询调节html字体的大小,效果不够精细(大小是分级改变的),可以使用JavaScript动态计算html的font-size

使用注意点

在rem使用过程中,要时刻注意 字体最小12px 的问题,设置 html的font-size 属性时,最好 不要小于12px ,如果设置了 10px;使用1rem的时候,其实是12px,因为最小12px;

你可能感兴趣的:(em和rem笔记)