- 安装所需插件
- amfe-flexible:自动计算font-size并添加到html标签上。如果你有自己的font-size计算方法,可以不引入这个插件。这是我自己的font-size方法,可供参考。
(function (doc, win) {
var docEl = doc.documentElement;
var resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize';
var recalc = function () {
var clientWidth = docEl.clientWidth;
if (!clientWidth) return;
win.fontSize = 100 * (clientWidth / 750);
docEl.style.fontSize = 100 * (clientWidth / 750) + 'px';
};
if (!doc.addEventListener) return;
win.addEventListener(resizeEvt, recalc, false);
doc.addEventListener('DOMContentLoaded', recalc, false);
})(document, window);
- postcss-plugin-px2rem:将px转化为rem。但对于内联样式中的px,无法转化。如:
<p style="margin-left: 10px;"></p>
,无法转化。
npm i amfe-flexible -S
npm i postcss-plugin-px2rem -D
- main.js中引入
import 'amfe-flexible';
- vue.config.js 中,对 postcss-plugin-px2rem 插件自定义配置
module.exports = {
css: {
loaderOptions: {
postcss: {
plugins: [
require('postcss-plugin-px2rem')({
rootValue: 50,
exclude: false,
mediaQuery: false,
minPixelValue: 3
})
]
}
}
}
};