npm install --save-dev postcss-plugin-px2rem

vue.config.js

module.exports = {css: {loaderOptions: {postcss: {plugins: [require('postcss-plugin-px2rem')({rootValue: 16, //换算基数, 默认100  ,1 / fontsize(html) = x 原来的1px转为0.0625rem// unitPrecision: 5, //允许REM单位增长到的十进制数字。//propWhiteList: [],  //默认值是一个空数组,这意味着禁用白名单并启用所有属性。// propBlackList: [], //黑名单// exclude: /(node_modules)/,  //默认false,可以(reg)利用正则表达式排除某些文件夹的方法,例如/(node_module)/ 。如果想把前端UI框架内的px也转换成rem,请把此属性设为默认值// selectorBlackList: [], //要忽略并保留为px的选择器// ignoreIdentifier: false,  //(boolean/string)忽略单个属性的方法,启用ignoreidentifier后,replace将自动设置为true。// replace: true, // (布尔值)替换包含REM的规则,而不是添加回退。// mediaQuery: false,  //(布尔值)允许在媒体查询中转换px。// minPixelValue: 3 //设置要替换的最小像素值(3px会被转rem)。 默认 0//exclude: "/node_modules/",// selectorBlackList: ['html', 'mint-', 'mt-', 'mpvue-', 'calendar', 'iconfont'], //在rem.js全局作用下   排除指定的文件的影响// propBlackList: ['border']})]}}}
}
  • 以上完成px->rem,为了某些已经以rem为单位的组件不受影响,如消息框图标,这里将rootValue设置为html默认字体大小16px(html根字体大小代表rem代表的大小,此时1rem=16px)
  • main.js中引入rem.js,监听窗口变化,等比例改变根fontsize达到改变rem的大小

rem.js

// 设置 rem 函数
function setRem() {let htmlWidth = document.documentElement.clientWidth// let htmlHeight = document.documentElement.clientHeight//得到html的Dom元素let htmlDom = document.getElementsByTagName('html')[0];// //设置根元素字体大小 937 / 16 = 58.5625 , 937是谷歌1080 - 工具栏高度// htmlDom.style.fontSize = (htmlHeight / 58.5625) + 'px';//设置根元素字体大小 1920 / 16 = 120htmlDom.style.fontSize = (htmlWidth / 120) + 'px';
}
// 初始化
setRem();
// 改变窗口大小时重新设置 rem
window.onresize = function () {setRem()
}

vue引入postcss-plugin-px2rem,px转rem相关推荐

  1. Vue移动端项目中px转rem的两种方法

    1)使用lib-flexible动态设置REM基准值(html标签的字体大小) 安装依赖 yarn add amfe-flexible// 或者npm i amfe-flexible 然后在main. ...

  2. Vue项目中自动将px转换为rem

    一.配置与安装步骤: 1.在 Vue 项目的 src 文件夹下创建一个 config 文件夹: 2.在 config 文件夹中创建 rem.js: 3.将以下代码复制到 rem.js 中: // 基准 ...

  3. VUE中引入插件实现px转换rem

    1.使用命令行安装lib-flexible: npm install lib-flexible --save 2.引入lib-flexible: 在项目入口文件 main.js 里 引入 lib-fl ...

  4. html页面如何按需导入vant,vue脚手架中使用Vant,实现自动按需引入组件,并将px转换为rem...

    偶然间看到一款不错的移动端vue组件库Vant,照着官方文档敲了一下,感觉还是不错的.想着以后的项目中可能会运用到,特此记录下,方便之后使用. 现在很多的组件库为了减小代码包体积,都支持按需加载了.V ...

  5. vue2项目中实现字体自适应(使用px2rem插件将px转rem)

    1.安装px2rem插件 npm add postcss-px2rem 2.配置 (1)在src下的utils目录中新建px2rem.js文件(没有utils就新建一个) px2rem.js // 基 ...

  6. vue 使用lib-flexable,px2rem 进行移动端适配 但是引入的第三方UI组件 vux 的样式缩小,解决方案...

    最近在写移动端项目,就想用lib-flexable,px2rem来进行适配,把px转换成rem但是也用到了第三方UI组件库vux,把这个引入发现一个问题就是vux的组件都缩小了,在网上找不到答案,最后 ...

  7. 基于vue-cli3的vue项目 通过postcss-pxtorem 实现px自动转换成rem

    使用postcss-pxtorem 项目中的px转换为rem,rem单位用于适配不同宽度的屏幕. 如何在vue-cli3.0中使用postcss-pxtorem 插件 1 安装依赖包 npm inst ...

  8. 移动端适配-flexible.js使用(解决对外部引入css,px2rem能不能转换rem问题)

    移动端flexible.js 适用于最新版vue-cli,配置手淘的lib-flexible.js和rem实现移动端页面自适应 1.安装lib-flexible.js npm install lib- ...

  9. vue Syntax Error Error PostCSS plugin postcss-pxtorem requires PostCSS 8

    vue Syntax Error: Error: PostCSS plugin postcss-pxtorem requires PostCSS 8. Migration guide for end- ...

  10. 适配移动端配置px2rem(自动将px转rem)

    vue配置px2rem 1.安装 npm install px2rem-loader lib-flexible –save 2.在项目入口文件main.js中引入lib-flexible import ...

最新文章

  1. 再遭质疑:Chrome、Safari自动填信息可能会泄密
  2. 如何防止google colab 掉线
  3. 【运营干货】三分钟,读懂互联网运营
  4. SecureCRT的快捷键
  5. Nacos支持配置的动态更新
  6. 教你轻松搞定javascript中的正则
  7. 一天完成一点,进度太慢了啊
  8. 启用OWA提示用户密码过期工具
  9. 【每日算法Day 93】不用额外空间,你会旋转一个矩阵吗?
  10. 今天开始,吾使用手机上的五笔输入法
  11. feiyanghaotian(飞扬浩天)的csdn博客
  12. 6-1 哈夫曼树及哈夫曼编码
  13. Excel_文本转数值型
  14. WinScp 安装连接使用
  15. snmp中mib文件解析
  16. 计算机组成原理位移量,计算机组成原理大题解析.doc
  17. python excel计算_怎么用python导入excel计算方差
  18. dir under linux.Linux下的类dir程序.
  19. 天鹅是白天的月亮(转)
  20. CSDN TOP1“一个处女座的程序猿“如何通过写作成为百万粉丝博主

热门文章

  1. mysql-5.5.8_MySQL5.5.8安装
  2. ngod规范_NGOD的架构说明与比较
  3. python操作文件和目录_python文件和目录操作方法
  4. figma下载_Figma的自动版式实用
  5. 2021 年最值得了解的 Node.js 工具
  6. 蛋花花APP,APP开发这几点你要注意了
  7. haproxy搭建web群集
  8. Android ping命令 -- Runtime
  9. checking size of char… configure: error: cannot compute sizeof (char) 解决方法
  10. 数论概论(Joseph H.Silverman) 习题 39.1 $\sqrt{3}$和$\sqrt{5}$的连分数展开中的重复现象...