移动端适配 使px自动转换rem


Posted in HTML / CSS onAugust 26, 2019
  • 先安装postcss-pxtorem: npm install postcss-pxtorem --save-dev 进行安装
  • 通过屏幕的变化,设置动态根元素 font-size :

移动端适配 使px自动转换rem 

我写在vue的html中

function setRem () {
        let htmlWidth = document.documentElement.clientWidth ||document.body.clientWidth;  //检测html的屏幕宽度和body的屏幕宽度
        document.documentElement.style.fontSize= htmlWidth/7.5 + 'px'; //设置font-size在750屏幕下的尺寸为100px,这样转换的rem可以一目了然之前是多少px的。开发屏幕尺寸自己选,3.2的320屏幕宽也可以。
      }
      setRem();
      window.onresize = function () {   //浏览器尺寸变化进行触发window.onresize函数,然后触发函数setRem()
        setRem()
      }

-然后在 .postcssrc.js 中进行 postcss-pxtorem 配置( .postcssrc.js是脚手架自动生成文件。配置完,要重新npm run dev 运行 ):

移动端适配 使px自动转换rem 

红圈内的需要配置的,剩下的是自带的 :
 

移动端适配 使px自动转换rem 

'postcss-pxtorem': {
  rootValue: 100,  //根元素大小设置,也就是html的font-size大小
  unitPrecision: 5,  //保留rem小数点多少位
  propList: ['*'],    //  是一个存储哪些将被转换的属性列表,这里设置为['*']全部,假设需要仅对边框进行设置,可以写['*', '!border*']  
  selectorBlackList: ['.radius'],  //则是一个对css选择器进行过滤的数组,比如你设置为['fs'],那例如fs-xl类名,里面有关px的样式将不被转换,这里也支持正则写法。
  replace: true,  //这个真不知到干嘛用的。有知道的告诉我一下
  mediaQuery: false,  //媒体查询( @media screen 之类的)中不生效
  minPixelValue: 12  //px小于12的不会被转换

    }

配置完了可以重新运行了npm run dev 
 

移动端适配 使px自动转换rem 

200px的宽高
 

移动端适配 使px自动转换rem

200px变成2rem 配置的100px为font-size。rootValue为100

移动端适配 使px自动转换rem 

设置class名为radius的样式不被转换
 

移动端适配 使px自动转换rem 

总结

以上所述是小编给大家介绍的移动端适配 使px自动转换rem,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

HTML / CSS 相关文章推荐
实现CSS3中的border-radius(边框圆角)示例代码
Jul 19 HTML / CSS
css3使网页、图片变成灰色兼容大多数浏览器
Jul 02 HTML / CSS
简单掌握CSS3中resize属性的用法
Apr 01 HTML / CSS
css3实现动画的三种方式
Aug 24 HTML / CSS
html5指南-3.如何实现html元素拖拽功能
Jan 07 HTML / CSS
HTML5之HTML元素扩展(下)—增强的Form表单元素值得关注
Jan 31 HTML / CSS
html5拍照功能实现代码(htm5上传文件)
Dec 11 HTML / CSS
HTML5和CSS3实例教程总结(推荐)
Jul 18 HTML / CSS
phonegap常用事件总结(必看篇)
Mar 31 HTML / CSS
详解Canvas实用库Fabric.js使用手册
Jan 07 HTML / CSS
如何在Canvas中添加事件的方法示例
May 21 HTML / CSS
HTML+CSS+JavaScript实现图片3D展览的示例代码
Oct 12 HTML / CSS
CSS3 毛玻璃效果
Aug 14 #HTML / CSS
详解css position 5种不同的值的用法
Jul 30 #HTML / CSS
CSS Houdini实现动态波浪纹效果
Jul 30 #HTML / CSS
使用css实现android系统的loading加载动画
Jul 25 #HTML / CSS
使用CSS3实现input多选框自定义样式的方法示例
Jul 19 #HTML / CSS
详解css3中 text-fill-color属性
Jul 08 #HTML / CSS
解决margin 外边距合并问题
Jul 03 #HTML / CSS
You might like
PHP 转义使用详解
2013/07/15 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(二)
2014/06/23 PHP
PHP设计模式之适配器模式代码实例
2015/05/11 PHP
PHP Reflection API详解
2015/05/12 PHP
非常经典的PHP文件上传类分享
2016/05/15 PHP
PHP模糊查询技术实例分析【附源码下载】
2019/03/07 PHP
php遍历目录下文件并按修改时间排序操作示例
2019/07/12 PHP
js获取网页高度(详细整理)
2012/12/28 Javascript
跟我学Nodejs(三)--- Node.js模块
2014/05/25 NodeJs
JavaScript中的变量作用域介绍
2014/12/31 Javascript
js实现仿爱微网两级导航菜单效果代码
2015/08/31 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记9)
2015/12/24 Javascript
文本溢出插件jquery.dotdotdot.js使用方法详解
2017/06/22 jQuery
关于vue-resource报错450的解决方案
2017/07/24 Javascript
JS Testing Properties 判断属性是否在对象里的方法
2017/10/01 Javascript
浅谈Vue2.0父子组件间事件派发机制
2018/01/08 Javascript
基于百度地图api清除指定覆盖物(Overlay)的方法
2018/01/26 Javascript
vue2.0 路由不显示router-view的解决方法
2018/03/06 Javascript
Angularjs实现数组随机排序的方法
2018/10/02 Javascript
elementUI中Table表格问题的解决方法
2018/12/04 Javascript
JavaScript数据结构之栈实例用法
2019/01/18 Javascript
node实现简单的增删改查接口实例代码
2019/08/22 Javascript
微信小程序中为什么使用var that=this
2019/08/27 Javascript
jquery选择器和属性对象的操作实例分析
2020/01/10 jQuery
[03:27]《辉夜杯》线下训练营 导师CU和海涛指点迷津
2015/10/23 DOTA
[14:24]Optic Gaming vs PSG LGD BO3
2018/06/07 DOTA
python中字符串类型json操作的注意事项
2017/05/02 Python
Python3多进程 multiprocessing 模块实例详解
2018/06/11 Python
Python中的self用法详解
2019/08/06 Python
python获取linux系统信息的三种方法
2020/10/14 Python
SEPHORA新西兰官方网站:购买化妆品和护肤品
2016/12/02 全球购物
解释下面关于J2EE的名词
2013/11/15 面试题
五十岁生日宴会答谢词
2014/01/15 职场文书
岗位聘任书范文
2014/03/29 职场文书
诚信贷款承诺书
2014/05/30 职场文书
2015年信息化建设工作总结
2015/07/23 职场文书