Lightning CSS 是一个基于 Rust 编写的高性能 CSS 解析、转译和压缩工具。它支持将许多现代的 CSS 特性解析并转化为指定浏览器支持的语法,并提供更好的压缩比例。
LightningCSS 插件可以使用 lightningcss-loader
替代 Rsbuild 中内置的 postcss-loader
,解决 PostCSS 和 autoprefixer 性能开销过大的问题,并可以使用 LightningCSSMinifyPlugin
替代 Rspack 中内置的默认 CSS 压缩工具获取更好的压缩比例。
你可以通过如下的命令安装插件:
你可以在 rsbuild.config.ts
文件中注册插件:
启用 Lightning CSS 作为 transform 工具后,基于 PostCSS 的配置和特性将无法使用,比如 tools.postcss
、tools.autoprefixer
和 Tailwind CSS。无法与 Tailwind CSS 联用的问题预计未来会在 Tailwind CSS V4 中解决。
使用 lightningcss-loader
替换 Rsbuild 内置的 postcss-loader
进行 CSS 转译,传递给 lightningcss-loader
的选项,请查阅 lightningcss 仓库 了解具体用法。
boolean | lightningcss.TransformOptions<CustomAtRules>
lightningcss-loader
,生产环境下依然使用 postcss-loader
使用 Lightning CSS 替换 Rspack 内置的 CSS 压缩工具进行 CSS 压缩,传递给 lightningcss
的选项,请查阅 lightningcss 仓库 了解具体用法。
boolean | lightningcss.TransformOptions<CustomAtRules>
ColorFunctions
和 HexAlphaColors
的压缩功能用于注入 lightningcss 实例,当项目内已经安装且存在 lightningcss 实例时可以使用该配置。
typeof import('lightningcss')