移动端适配 使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中background-clip和background-origin的区别示例介绍
Mar 10 HTML / CSS
使用CSS3滤镜的filter:blur属性制作毛玻璃模糊效果的方法
Jul 08 HTML / CSS
详解CSS透明opacity和IE各版本透明度滤镜filter的最准确用法
Dec 20 HTML / CSS
css3+伪元素实现鼠标移入时下划线向两边展开的效果
Apr 25 HTML / CSS
CSS3实现淘宝留白的方法
Jun 05 HTML / CSS
详解css3中dispaly的Grid布局与Flex布局
Sep 11 HTML / CSS
一篇文章带你学习CSS3图片边框
Nov 04 HTML / CSS
使用HTML5的链接预取功能(link prefetching)给网站提速
Dec 13 HTML / CSS
html5开发之viewport使用
Oct 17 HTML / CSS
h5实现获取用户地理定位的实例代码
Jul 17 HTML / CSS
HTML5自定义视频播放器源码
Jan 06 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传输数据的代码
2007/11/13 PHP
Discuz! Passport 通行证整合
2008/03/27 PHP
PHP删除HTMl标签的实现代码
2013/06/30 PHP
html 锁定页面(js遮罩层弹出div效果)
2009/10/27 Javascript
详解JavaScript中undefined与null的区别
2014/03/29 Javascript
JavaScript模块规范之AMD规范和CMD规范
2015/10/27 Javascript
再次谈论React.js实现原生js拖拽效果引起的一系列问题
2016/04/03 Javascript
原生JS封装Ajax插件(同域、jsonp跨域)
2016/05/03 Javascript
IScroll5 中文API参数说明和调用方法
2016/05/21 Javascript
JavaScript基于对象去除数组重复项的方法
2016/10/09 Javascript
简单实现node.js图片上传
2016/12/18 Javascript
bootstrap实现的自适应页面简单应用示例
2017/03/09 Javascript
小程序scroll-view安卓机隐藏横向滚动条的实现详解
2019/05/16 Javascript
vue远程加载sfc组件思路详解
2019/12/25 Javascript
javascript实现支付宝滑块验证码效果
2020/07/24 Javascript
[46:14]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第一场 12.11
2020/12/16 DOTA
python读写文件操作示例程序
2013/12/02 Python
Python中__init__和__new__的区别详解
2014/07/09 Python
python处理文本文件并生成指定格式的文件
2014/07/31 Python
python实现连接mongodb的方法
2015/05/08 Python
Python自动生产表情包
2017/03/17 Python
Django如何实现内容缓存示例详解
2017/09/24 Python
python交互式图形编程实例(三)
2017/11/17 Python
Python线性回归实战分析
2018/02/01 Python
python读取xlsx的方法
2018/12/25 Python
PyQt5创建一个新窗口的实例
2019/06/20 Python
python opencv 二值化 计算白色像素点的实例
2019/07/03 Python
Python内置函数property()如何使用
2020/09/01 Python
德国婴儿推车和儿童安全座椅商店:BABYSHOP
2016/09/01 全球购物
倩碧香港官方网站:Clinique香港
2017/11/13 全球购物
韩国流行时尚女装网站:Dintchina(中文)
2018/07/19 全球购物
自动化毕业生专业自荐书范文
2014/02/04 职场文书
父母对孩子说的话
2014/04/12 职场文书
领导干部群众路线个人对照检查材料思想汇报
2014/09/30 职场文书
餐厅保洁员岗位职责
2015/04/10 职场文书
CSS作用域(样式分割)的使用汇总
2021/11/07 HTML / CSS