页面适配之pt、px、em、rem的用法

咱们在开发页面时,会遇到pt、px、em、rem这四种单位。下面介绍一下这四个单位。html

1.pt,英文为points,绝对长度单位,意为磅。设计软件zeplin所用的单位就是pt。如今不多使用这个单位了。浏览器

2.px,英文为pixel,相对长度单位,意为像素。是相对于屏幕分辨率的单位,国内主流单位。字体

3.em,相对长度单位,相对于当前对象内文本的字体尺寸,即em的计算是基于父级元素font-size的。好比:spa

<body style="font-size:14px">
    <p style="font-size:2em">我这里的字体显示大小是28px(14px*2)</p>  
    <div style="font-size:18px">
        <p style="font-size:2em">我这里显示字体大小是36px(18px*2),而不是上面计算的28px</p>
    </div>
</body>

这个单位国外用的比较多。设计

4.rem,即root em,是CSS3新出的单位,用于移动端的适配。code

这个单位与em有什么区别呢?
区别在于使用rem为元素设定字体大小时,仍然是相对大小,但相对的只是HTML根元素。htm

这个单位可谓集相对大小和绝对大小的优势于一身,经过它既能够作到只修改根元素就成比例地调整全部字体大小,又能够避免字体大小逐层复合的连锁反应。对象

目前,除了IE8及更早版本外,全部浏览器均已支持rem。对于不支持它的浏览器,应对方法也很简单,就是多写一个绝对单位(如pt)的声明。这些浏览器会忽略用rem设定的字体大小。blog

使用方法:开发

html{
    font-size:16px;
}
 <body style="font-size:14px">
     <p style="font-size:2rem">我这里的字体显示大小是32px(16px*2),由于我是根据html根元素的font-size大小进行计算的</p>  
     <div style="font-size:18px">
         <p style="font-size:2rem">我这里显示字体大小是32px(16px*2),由于我是根据html根元素的font-size大小进行计算的</p>
     </div>
 </body>

浏览器默认的字体大小就是16px,因此html的font-size不写也能够。

这是px在线转rem的地址

rem配合媒体查询可兼容移动端的不一样设备。如:

@media only screen and (min-width: 320px){
  html {
    font-size: 62.5% !important;
  }
}
@media only screen and (min-width: 640px){
  html {
    font-size: 125% !important;
  }
}
@media only screen and (min-width: 750px){
  html {
    font-size: 150% !important;
  }
}
@media only screen and (min-width: 1242px){
  html {
    font-size: 187.5% !important;
  }
}

随着屏幕的增大,html的字体大小也增大,其余地方也因使用了rem按比例增大。

相关文章
相关标签/搜索