rem
适配适配(记录)
- 安装
postcss-pxtorem
和amfe-flexible
npm install postcss-pxtorem --save-dev
npm i amfe-flexible
- 在
main.js
中引入amfe-flexible
import 'amfe-flexible'
import 'amfe-flexible/index.js'
- 在
vue.config.js
中进行配置module.exports = {
css: {
loaderOptions: {
postcss: {
plugins: [
require('postcss-pxtorem')({
rootValue({ file }) {
return file.indexOf('vant') !== -1 ? 37.5 : 75;
},
selectorBlackList: ['vant', 'mu'],
propList: ['*']
}),
]
}
}
}
}
- 在
index.html
头部加入手机端自适应meta
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no, viewport-fit=cover">
- Ios
安全区域
适配
<style>
/* 规避安卓机 */
@supports ((height: constant(safe-area-inset-top)) or (height: env(safe-area-inset-top))) and (-webkit-overflow-scrolling: touch) {
/*padding-top: env(safe-area-inset-top);*/
/*padding-left: env(safe-area-inset-left);*/
/*padding-right: env(safe-area-inset-right);*/
/*padding-bottom: env(safe-area-inset-bottom);*/
body {
/* 适配齐刘海 */
/*padding-top: 20px;*/
/*padding-top: constant(safe-area-inset-top);*/
/*padding-top: env(safe-area-inset-top);*/
/* 适配底部小黑条 */
/*padding-bottom: 0;*/
/*padding-bottom: costant(safe-area-inset-bottom);*/
padding-bottom: env(safe-area-inset-bottom);
}
}
</style>