Autoprefixer 没有添加前缀?

发布于 2023-05-06 21:05:35 字数 2170 浏览 79 评论 0

PostCSS 中使用 Autoprefixer 发现没有给我添加前缀,然后...

两种解决方案:

方案一

无论使用 postcss.config.js 等配置文件还是直接在 webpack.config.js 中使用 Autoprefixer,都需要设置 browserslist 才会帮你添加前缀。

// postcss.config.js
module.exports = {
  plugins: [
    require('autoprefixer')
  ]
}
// webpack.config.js
module.exports = {
  module: {
    rules: [
      {
        test: /\.css$/,
        use: ['style-loader', 'css-loader', {
          loader: 'postcss-loader',
          options: {
            plugins: [
              require('autoprefixer')
            ],
          }
        }]
      }
    ]
  }
}
// package.json
{
  "browserslist": [
    "last 2 versions",
    "> 1%",
    "iOS 7",
    "last 3 iOS versions"
  ]
}

或者添加配置文件 .browserslistrc

# Browsers that we support

last 2 versions
> 1%
iOS 7
last 3 iOS versions

2. 方案二(不推荐)

postcss.config.js 配置文件添加 browsers 选项,但是这种方式,Autoprefixer 不提倡这种写法,会导致一些错误。

建议使用方案一解决,否则项目构建时会有警告:

Replace Autoprefixer browsers option to Browserslist config.
Use browserslist key in package.json or .browserslistrc file.

Using browsers option cause some error. Browserslist config
can be used for Babel, Autoprefixer, postcss-normalize and other tools.

If you really need to use option, rename it to overrideBrowserslist.

Learn more at:
https://github.com/browserslist/browserslist
https://twitter.com/browserslist

// postcss.config.js
module.exports = {
  plugins: [
    require('autoprefixer')({
      browsers: ['defaults', 'not ie < 11', 'last 2 versions', '> 1%', 'iOS 7', 'last 3 iOS versions']
    })
  ]
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

寂寞清仓

暂无简介

文章
评论
28 人气
更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文