移动端适配 使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中HSL和HSLA的简单使用示例
Jul 14 HTML / CSS
CSS3实现大小不一的粒子旋转加载动画
Apr 21 HTML / CSS
CSS3实现复选框动画特效示例代码
Sep 27 HTML / CSS
CSS3实现文本垂直排列的方法
Jul 10 HTML / CSS
浅谈CSS3 box-sizing 属性 有趣的盒模型
Apr 02 HTML / CSS
Html5移动端弹幕动画实现示例代码
Aug 27 HTML / CSS
html5 学习简单的拾色器
Sep 03 HTML / CSS
html5摇一摇代码优化包括DeviceMotionEvent等等
Sep 01 HTML / CSS
HTML5在线预览PDF的示例代码
Sep 14 HTML / CSS
canvas仿写贝塞尔曲线的示例代码
Dec 29 HTML / CSS
详解使用双缓存解决Canvas clearRect引起的闪屏问题
Apr 29 HTML / CSS
HTML5调用手机发短信和打电话功能
Apr 29 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中限制IP段访问、禁止IP提交表单的代码
2011/04/23 PHP
PHP在线生成二维码(google api)的实现代码详解
2013/06/04 PHP
php根据身份证号码计算年龄的实例代码
2014/01/18 PHP
PHP输入流php://input实例讲解
2015/12/22 PHP
CI框架常用经典操作类总结(路由,伪静态,分页,session,验证码等)
2016/11/21 PHP
定位地理位置PHP判断员工打卡签到经纬度是否在打卡之内
2019/05/23 PHP
基于jQuery的Spin Button自定义文本框数值自增或自减
2010/07/17 Javascript
jquery获取tr并更改tr内容示例代码
2014/02/13 Javascript
使用js显示当前时间示例
2014/03/02 Javascript
js点击button按钮跳转到另一个新页面
2014/10/10 Javascript
jQuery EasyUI框架中的Datagrid数据表格组件结构详解
2016/06/09 Javascript
jQuery插件扩展实例【添加回调函数】
2016/11/26 Javascript
js实现定时进度条完成后切换图片
2017/01/04 Javascript
JS实现队列的先进先出功能示例
2017/05/10 Javascript
Javascript实现信息滚动效果
2017/05/18 Javascript
JavaScript数组push方法使用注意事项
2017/10/30 Javascript
JS随机数产生代码分享
2018/02/24 Javascript
jQuery pjax 应用简单示例
2018/09/20 jQuery
Vue实现固定定位图标滑动隐藏效果
2019/05/30 Javascript
python解析模块(ConfigParser)使用方法
2013/12/10 Python
10款最好的Web开发的 Python 框架
2015/03/18 Python
Python编程中的文件操作攻略
2015/10/16 Python
Python黑魔法@property装饰器的使用技巧解析
2016/06/16 Python
Python实现翻转数组功能示例
2018/01/12 Python
python3中datetime库,time库以及pandas中的时间函数区别与详解
2020/04/16 Python
如何用tempfile库创建python进程中的临时文件
2021/01/28 Python
世界上最大的餐具公司:Oneida
2016/12/17 全球购物
包装类的功能、种类、常用方法
2012/01/27 面试题
简述数组与指针的区别
2014/01/02 面试题
机械设计职业生涯规划书
2013/12/27 职场文书
幼儿园教师考核评语
2014/12/31 职场文书
2015年社区民政工作总结
2015/04/21 职场文书
可怜妈妈观后感
2015/06/09 职场文书
毕业典礼主持词
2015/06/29 职场文书
结婚司仪主持词
2015/06/29 职场文书
docker 制作mysql镜像并自动安装
2022/05/20 Servers