一天一个知识点(3):em 是什么? rem 是什么?两者有什么区别?

158 阅读1分钟

em和rem都是用于网页布局的长度单位,它们的区别在于相对于不同的参考对象进行计算。

em(相对单位):指相对于当前元素的字体大小(font-size)来计算长度值,比如如果当前元素的字体大小为16px,那么1em就等于16px。

rem(相对根元素的单位):指相对于根元素(即html元素)的字体大小来计算长度值,比如如果根元素的字体大小为16px,那么1rem就等于16px。在CSS3中,rem的出现主要是为了解决em的缺陷,即em的参考对象是当前元素的父元素的字体大小,如果嵌套层级较深,就需要多次计算。

区别:

  1. 参考对象不同:em相对于当前元素的字体大小,rem相对于根元素的字体大小。
  2. 使用场景不同:em适用于一些字体大小等需要根据当前字体大小等比例调整的情况,rem适用于一些布局中需要根据根元素字体大小调整的情况。
  3. 计算方式不同:em计算方式相对复杂,需要逐级向上寻找参考对象,而rem只需要参考根元素即可,计算相对简单。

在实际应用中,建议根据不同的场景使用不同的单位,灵活运用em和rem可以帮助我们实现更加灵活和精细的网页布局。