rem自适应

rem自适应

比如 设计稿宽高是1920 *1080,那么 设计图中各个元素在此分辨率下肯定能展示正常。

1、宽 以实际屏幕的整个宽度为标准,高度按原稿的比例来适配此宽度。
  document.documentElement.style.fontSize =  1080/10.80+ 'px';  //原稿1rem的值100px,项目中以此去计算
  const sw = window.innerWidth-15;//满宽度--提前减去纵向的滑动条宽度;   
  const sh = sw*1080/1920;  //以高度适配
  document.documentElement.style.fontSize = sh / 10.80+ 'px';   //修改1rem的px值,实现等比缩放

那么此时可能出现宽度满屏,但是设计稿中的一屏幕的类容纵向上在此处展示的不是全面的。

2 高 以实际屏幕的高度为标准,宽度按原稿的比例来适配此高度。
  document.documentElement.style.fontSize =  1920/19.20+ 'px';  //原稿1rem的值100px,项目中以此去计算
  const sh = window.innerHigth;   //实际展示时满高度,
  const sw = sh*1920/1080;  //以宽度适配
  document.documentElement.style.fontSize = sw / 19.20+ 'px';   //修改1rem的px值,实现等比缩放

那么此时可能出现纵向上是原稿一屏幕的内容,但是宽度上可能就有多余的空间留出来了。

在这里插入图片描述

宽度空余不居中,可以通过在body中加上 margin:0 auto 实现自动居中。

以上都是1rem= 100px,就不用去费心计算了,比如一个元素 with是275px ,那么就是2.75rem

同样可用于手机页面自适应。有的可能要加上对dpr的处理使显示更好,这个可以参考其他的dpr处理方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值