🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 适配:都用百分比? 如果我们不用rem,在750设计稿单位转换时就全部用百分比不也可以,比如宽高占750屏幕的多少,全部用百分比,不也和rem一样的吗,这样还不用动态设置跟大小那么麻烦了,直接就能够完美适配了。 **其实本质上rem就是相对于根元素的比例,resize时还要动态设计根元素的font-size,百分比的话就不用这么麻烦了,直接相对的就是屏幕,所以本身就是自适应的。** 但利用百分比有个问题,百分比是相对于父元素的,如果本身是第一层元素还好,直接相对的是屏幕大小,但如果是嵌套很深的子元素,那么使用百分比会很难计算了。**所以使用百分比代替rem,理论上原理可行,但是由于计算不方便,所以不能使用。** 其实也并不是百分比不好算,而是height的百分比不好计算,以顶层元素举例,width百分比为屏幕的宽的百分比,**height为页面高度的百分比,但页面的高度不是固定值**,还可能是动态的,设计稿上也只是展示部分内容,页面高度可能是无限的,那这就麻烦了,所以直接使用百分比计算不可行!而rem就不一样了,所有计算都是html的font-size值为基准值,相当于是于根的百分比。 (百分比其实就是em,而rem顾名思义,就是root根的百分比/em啊。) [浅谈响应式Web设计与实现思路](https://www.toutiao.com/a6508149161299280398/?tt_from=weixin&utm_campaign=client_share&timestamp=1515350460&app=news_article&utm_source=weixin&iid=22069500288&utm_medium=toutiao_android&wxshare_count=1) > 特别注意的是margin,padding属性值为百分比时,是基于当前元素width值的。**%单位也是一个缩放单位,所以也常用于样式适配。** >[tip] 错!!!只有padding才是基于当前元素的,margin和width一样,都是基于父元素的。 * * * * * last update:2018-7-19 15:44:20