响应式理念:响应式网页不单单是响应不一样类型的设备,并且须要响应不一样的用户需求。响应式的初衷是为了让信息更好的传递交流,让全部人无障碍的获取信息,同时这也是 Web 的初衷。html
1、rem的定义浏览器
网页中经常使用的文字大小单位是 px(Pixels),em,如今新增了 rem 这个单位。布局
「rem」是指根元素(root element,html)的字体大小,根元素默认的 font-size 都是 16px。字体
2、兼容性spa
这样一个新的单位兼容性如何呢?请出 Caniuse 看看吧设计
太好了,IE9+,Firefox、Chrome、Safari、Opera 的主流版本都支持了htm
咱们知道 em 的计算是基于父级元素的,在实际使用中给咱们的计算带来了很大的不便。因此 rem 的出现解救了我这样不会算术的人,不再用担忧父级元素的 font-size 了,由于它始终是基于根元素(html) 的。blog
好比默认的 html font-size=16px,那么我想设置12px 的文字就是:12÷16=0.75(rem)element
固然,咱们改变一下 html 的默认 font-size=10px 不就好计算了嘛! rem
html{
font-size:62.5%; /* 10÷16=62.5% */
}
body{
font-size:12px;
font-size:1.2rem ; /* 12÷10=1.2 */
}
p{
font-size:14px;
font-size:1.4rem;
}
须要注意的是,为了兼容不支持 rem 的浏览器,咱们须要在 rem 前面写上对应的 px 值,这样不支持的浏览器能够优雅降级。
3、为何用rem
浏览器中用户都是能够自定义默认的文字大小的,若是使用 px,用户自行在浏览器设置中改变了文字大小后,网页上是不会变化的。而rem能够(响应式网页不单单是响应不一样类型的设备,并且须要响应不一样的用户需求。)
4、何时用 rem
常在标题,正文等大面积文字的位置可使用 rem。可是在一些特殊的设计场景,rem 可能会致使布局错位
(参考淘宝响应式十日谈)