rem适配原理

13 篇文章 1 订阅

目录

rem含义

图解

公式

屏幕适配

方案一:媒体查询

方案二:flexible.js


rem含义

w3c的定义是相对于根元素的字体大小(font-size)在根元素的font-size属性中指定时,rem单位是指属性的初始值

这意味着1rem等于html元素的字体大小

图解

公式

属性: 设计稿中元素的尺寸 / (设计图大小 / 分成的分数) * 屏幕中一份的大小(rem)

如上图就是 width: 16 / (640 / 20) * rem 

屏幕适配

方案一:媒体查询

@media screen and (width: 320px) {
  html {
    /* 在320宽的屏幕中 一份是 16px,即1rem */
    font-size: calc(320px / 20);
  }
}


@media screen and (width: 375px) {
  html {
    /* 在375宽的屏幕中 一份是 18.75px,即1rem */
    font-size: calc(375px / 20);
  }
}


@media screen and (width: 360px) {
  html {
    /* 在360宽的屏幕中 一份是 18px,即1rem */
    font-size: calc(360px / 20);
  }
}

上面的方案,只能适配的是写了媒体查询的手机,写不到的就适配不了

方案二:flexible.js

在工作中 我们其实没有这么干过,但是上面的方案是可行的,工作中用的是什么方案呢?

淘宝用的 flexible.js

flexible.js 的作用: 为了不写媒体查询(因为市场上手机类别太多 ,写多少媒体查询都不足以适配所有手机)

flexible.js的使用步骤

1.先要确定 你的设计图多宽  640  750 1125

2.下载插件两个文件:flexible_css.debug.js、flexible.debug.js

3. 以前这么写: 元素的尺寸/32rem;  现在用了flexible这样写: 元素的尺寸/设计图宽度/10*rem

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

__畫戟__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值