飞道的博客

css常见字体单位

284人阅读  评论(0)

一:px 像素

px单位的名称为像素,它是一个固定大小的单元,是绝对单位,由于它是固定大小的单位,单独用它来设计的网页,如果适应大屏幕(电脑),在小屏幕(手机)上就会很不友好,做不到自适应的效果。

二: em(相对长度单位)

em单位的名称为相对长度单位,它是用来设置文本的字体尺寸的,相对于父级元素对象内文本的字体尺寸;如果没有人为设置当前对象内文本的字体尺寸,那么它相对的是浏览器默认的字体尺寸(16px)

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" /> 
  <title>用em相对长度单位来设置文本的字体大小</title> 
  <style type="text/css">
    body{background-color: #aaa;}
    .div{border:1px solid red;width:300px;height:100px;font-size:30px;}
    .em{font-size:0.5em;}/*30px x 0.5 = 15px*/
  </style>
 </head>
 <body> 
  <div class="div">
   <span class="em">用em相对长度单位来设置文本的字体大小</span>
  </div> 
 </body>
</html>

以上实例em是相对于父级元素div的,div设置的字体大小为30px,所以0.5em计算后的字体大小为:30px x 0.5 = 15px

三:rem(css3新增的相对长度单位)

rem只相对于根目录,即HTML元素。所以只要在html标签上设置字体大小,文档中的字体大小都会以此为参照标准,一般用于自适应布局。

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" /> 
  <title>用css3新增的相对长度单位rem来设置文本的字体大小</title> 
  <style type="text/css">
    body{background-color: #aaa;}
   .div{border:1px solid red;width:300px;height:100px;font-
 size:30px;}
   .rem{font-size:0.5rem;}/*16px x 0.5 = 8px*/ 
</style>
 </head>
 <body> 
  <div class="div">
   <span class="rem">用rem相对长度单位来设置文本的字体大小</span>
  </div> 
 </body>
</html>

rem是相对于根元素html元素的,浏览器一般默认字体大小为16px,所有0.5rem的计算后的字体大小为:16px x 0.5 = 8px,跟父元素设定的30px没有关系
css中的body中先全局声明font-size=62.5%,这里的%的算法和rem一样。
因为100%=16px,1px=6.25%,所以10px=62.5%,
这是的1rem=10px,所以12px=1.2rem。px与rem的转换通过10就可以得来,很方便了吧!

四:%(百分比)

%也很常见,它和em差不多一样,都是相对于父级元素。但%可以在很多属性中使用,比如:width、height、font-size等。而em是用来设置字体大小(font-size)的单位,width、height等属性是没有em单位的。

总结

  • px是固定长度单位,不随其它元素的变化而变化;
  • em和%是相对于父级元素的单位,会随父级元素的属性(font-size或其它属性)变化而变化;
  • rem是相对于根目录(HTML元素)的,所有它会随HTML元素的属性(font-size)变化而变化;
  • px和%用的比较广泛一些,可以充当更多属性的单位,而em和rem是字体大小的单位,用于充当font-size属性的单位

转载:https://blog.csdn.net/Ll1994693/article/details/106478642
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场