vue pc端自适应平板,手机各个移动端屏幕
- 安装插件
//根节点会根据页面视口变化而变化font-size大小 // 版本推荐 1.0.2 npm install lib-flexible-computer -S //自动将px转换为rem //版本推荐 0.1.9 npm i px2rem-loader -D //将代码中px自动转化成对应的rem的一个插件 npm install postcss-px2rem-exclude -D
复制
- 在main.js引入
//自适应不同分辨率 import 'lib-flexible-computer'
复制
- 在vue.config.js中配置
module.exports = { devServer: {}, css: { loaderOptions: { postcss: { postcssOptions: { plugins: [ require('postcss-pxtorem')({ rootValue: 120, // 换算的基数 屏幕宽度/10 propList: ['*'],// 需要转换的属性,*表示所有属性都需要转换 }) ] } } } } };
复制
-
配置完之后如果报错 node.getIterator is not a function
使用 postcss-px2rem-exclude 会出现该错误 -
解决方法
// 卸载 npm uninstall postcss-px2rem-exclude //重新安装 npm install postcss-pxtorem@6.0.0
复制
-
搞定!亲测有效!
-
由于该博客 好多同学使用时 都会出现各种问题 所以我有自己测试了一遍
以下是测试结果 -
直接复制该博客 是没有问题的 效果图如下
大屏
手机
平板
css: { loaderOptions: { postcss: { postcssOptions:{ plugins: [ require('postcss-pxtorem')({ rootValue: 120, // 请注意这行代码,用来设定根元素字体大小 值越大 字体越小 propList: ['*'], // 转换所有属性 }) ] } } }, }
复制
注释上面的代码 适配失效
暂未复现 同学们提出的问题。部分样式可能需要单独处理。