webpack 移动端 CSSpx 自动转换成 rem

CSS px to rem

分辨率不同

浏览器的分辨率都是不一样的

过去

在过去,我们都是靠媒体查询来实现响应式布局

这里有个缺陷,就是需要写多套匹配样式的代码

@media screen and (max-width: 980px) {
  .header {
    width: 900px;
  }
}

@media screen and (max-width: 480px) {
  .header {
    height: 400px;
  }
}

@media screen and (max-width: 350px) {
  .header {
    height: 300px;
  }
}

rem 是什么?

W3C 对 rem 的定义:font-size of the root element

rem 和 px 的对比:

  • rem 是相对单位
  • px 是绝对单位

移动端 CSS px 自动转换 rem

使用 px2rem-loader

页面渲染的时候计算根元素的 font-size 值

npm install px2rem-loader -D
npm install lib-flexible -S
module.exports = {
  module: {
    rules: [
      test: /\.less$/,
      use: [
      	'style-loader',
      	'css-loader',
      	'less-loader',
      	{
      		loader: 'px2rem-loader',
      		options: {
      			remUnit: 75,
      			remPrecision: 8
      		}
      	}
    	]
    ]
  }
};
posted @ 2020-09-11 14:03  jaiodfjiaodf  阅读(1266)  评论(1编辑  收藏  举报