CSS自适应分辨率 amfe-flexible 和 postcss-pxtorem:Webpack5 升级后相关插件和配置更新说明

前言

项目对应的 webpack5 版本如下:

bash 复制代码
npm i webpack@5.89.0 -D
npm i webpack-cli@5.1.4 -D

升级插件

说明一下,我更喜欢固定版本号,这样随机bug会少很多,更可控~

bash 复制代码
npm i postcss-loader@6.1.1 -D
npm i postcss-pxtorem@6.0.0 -D

配置

根目录下,新建文件 postcss.config.js ,配置如下:

js 复制代码
module.exports = {
    "plugins": {
        "postcss-pxtorem": {
            rootValue: 16, // 16px = 1rem
            unitPrecision: 5,
            propList: ['*'],
            // selectorBlackList: ['el-',],
            replace: true,
            mediaQuery: false,
            minPixelValue: 0
        }
    }
}

webpack.config.js 修改,

  1. 代码第 8 和 16 行,添加 postcss-loader,它会自动去读取文件 postcss.config.js 的配置;

  2. 代码第 16 行,注意这一行必须在下一行的 stylus-loader 之前。也就是在预处理语言 stylus loader之前,否则报错。

  3. 同理,其它预处理语言类似,如 sass 等;

  4. 参考 Webpack5 postcss-loader 配置;

js 复制代码
module.exports = {
    module: {
        rules: [{
                test: /\.css$/,
                use: [
                    "style-loader",
                    "css-loader",
                    'postcss-loader'
                ]
            },
            {
                test: /\.styl(us)?$/,
                use: [
                    'style-loader',
                    'css-loader',
                    'postcss-loader',
                    'stylus-loader'
                ]
            }
        ]
    }
};
相关推荐
软件技术NINI2 小时前
html css网页制作成品——HTML+CSS盐津铺子网页设计(5页)附源码
前端·css·html
Pu_Nine_93 小时前
教程: 在网页中利用原生CSS实现3D旋转动画
css·3d·css3
struggle20259 小时前
AxonHub 开源程序是一个现代 AI 网关系统,提供统一的 OpenAI、Anthropic 和 AI SDK 兼容 API
css·人工智能·typescript·go·shell·powershell
朝阳3912 小时前
CSS【实战】可编辑元素实现 placeholder -- contenteditable=“true“
css
Ares-Wang13 小时前
CSS3》》 transform、transition、translate、animation 区别
前端·css·css3
fox_16 小时前
CSS3:水平垂直居中的 N 种实现方法
css
超能996要躺平16 小时前
用三行 CSS 实现任意多列等分布局:深入掌握 Grid 的 repeat() 与 gap
前端·css
寒月霜华17 小时前
JavaWeb-html、css-网页正文制作
前端·css·html
*濒危物种*17 小时前
HTML标签语法,基本框架
前端·css·html
软件技术NINI17 小时前
html css js网页制作成品——HTML+CSS+js早餐铺网页设计(4页)附源码
javascript·css·html