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: ['*'], // 转换所有属性
})
]
}
}
},
}
注释上面的代码 适配失效
暂未复现 同学们提出的问题。部分样式可能需要单独处理。