用rem来做响应式开发

2016-12-01  本文已影响0人  难以旧城繁华


一、兼容

目前,IE9+、Firefox、Chrome、Safari、Opera 的主流版本都支持了rem。IE9以下版本的话不支持还需使用px来设置。

二、使用%单位方便实用

css中的body中先全局声明font-size=62.5%,这里的%的算法和rem一样。因为100%=16px,1px=6.25%,所以10px=62.5%,这是的1rem=10px,所以12px=1.2rem。px与rem的转换通过10就可以得来,非常方便。

三、w3c官网描述是“font size of the root element”,即rem是相对于根元素。

我们只需要在根元素确定一个参考值,在根元素中设置多大的字体,这完全可以根据您自己的需,大家也可以参考下图:

四、使用方法

注意,rem是只相对于根元素htm的font-size,即只需要设置根元素的font-size,其它元素使用rem单位设置成相应的百分比即可;

例子:

1/*16px * 312.5% = 50px;*/2html{font-size: 312.5%;}

1/*50px * 0.5 = 25px;*/2body{3font-size: 0.5rem;4font-size/0:25px;5}

五、优点

由于其他字体大小都是基于html的,所以在移动端做适配的时候,可以使用这样的方法

@media only screen and (min-width: 320px){2html {3font-size: 62.5% !important;4}5}6@media only screen and (min-width: 640px){7html {8font-size: 125% !important;9}10}11@media only screen and (min-width: 750px){12html {13font-size: 150% !important;14}15}16@media only screen and (min-width: 1242px){17html {18font-size: 187.5% !important;19}20}

这样子就能做到仅仅改变html的字体大小,让其他字体具有“响应式”。

上一篇下一篇

猜你喜欢

热点阅读