REM适配

要根据屏幕的变化进行适配 两件事需要做

  1. 需要把px 转化成rem

  2. 需要根据当前的屏幕的变化调整当前font-size的大小

Vant 中的样式默认使用px作为单位,如果需要使用rem单位,推荐使用以下两个工具

  • postcss-pxtorem 是一款 postcss 插件,用于将单位转化为 rem,我们开发时,原来怎么写 现在还怎么写,会自动转成rem

通过postcss-pxtorem转化的时候,需要设置一个基准值, font-size: 30px => rem ? 30px / 基准值 = rem值

移动端适配的时候,一般以iphone6的屏幕宽度的十分之一 作为基准值 37.5

  • font-size: 30px => font-size: 30px /基准值 rem

  • lib-flexible 用于动态设置 rem 基准值

首先,需要安装:

开发阶段 直接 将px => rem

# 后处理器 开发阶段使用 
$ npm i postcss-pxtorem -D
$  yarn add  postcss-pxtorem --dev

 需要对pxtorem插件进行配置,需要在项目的根目录下 建立一个 postcss.config.js文件, 这个文件是默认的文件名, 进行配置

// 此文件专门处理postcss插件
module.exports = {
  // 所有的postcss插件
  plugins: {
    //   自动给css样式加前缀的属性 display:flex  => 自动其他浏览器的前缀
    autoprefixer: {},
    'postcss-pxtorem': {
      rootValue: 37.5, // 基准值 font-size: 30px  =>  300/ rootValue = rem
      propList: ['*'] // 包括哪些文件  所有的文件都转化rem
    }
  }
}

 

改动postcss.config.js 之后需要重新启动服务才可以看到效果

重启启动发现,rem虽然有了,但是屏幕并没有因为变化 而改变font-size

此时我们需要第二个插件,根据当前屏幕的变化 而产生 不同的font-size


# 修改rem基准值的js插件   需要在打包后需要使用
$ npm i amfe-flexible -S  #因为 需要在运行时 实时改变 font-size大小 根据屏幕
$ yarn add amfe-flexible  

 最后,入口文件main.js导入 amfe-flexible

import 'amfe-flexible'

注意

  • rootValue 是转换px的基准值,参考设备iPhone6,设备宽度375px。

  • flexible 在iPhone6设备设置的 html--->font-size 也为37.5px 。

  • 但是 设计稿 尺寸750px 大小,所以在设计稿量取的尺寸使用时候需要 除以2

设计图 => 28px => 14px /37.5 = rem

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值