优化
什么是优化?
优化是某一类模块的总称,它们对某些 CSS 代码执行转换操作 以减少 CSS 的体积或者 gzip 之后的 CSS 的体积。每一次 的优化都需要由一个或数个模块 一起协同工作。
由于 cssnano 生来就是功能模块化的, 因此在某些情况下,单独执行转换操作并不能产生 最优化的输出,例如,postcss-colormin 没有清理 色彩函数内部空白的功能,因为这项清理功能是由 postcss-normalize-whitespace 来负责的。
支持哪些优化?
根据预设(preset)的不同,执行的优化也就不同。对于默认预设(preset),我们只提供了安全转换功能。
| 默认(default) | 进阶(advanced) | 轻量(lite) | |
|---|---|---|---|
| autoprefixer | ❌ | ✅ | ❌ |
| cssDeclarationSorter | ✅ | ✅ | ❌ |
| calc | ✅ | ✅ | ❌ |
| colormin | ✅ | ✅ | ❌ |
| convertValues | ✅ | ✅ | ❌ |
| discardComments | ✅ | ✅ | ✅ |
| discardDuplicates | ✅ | ✅ | ❌ |
| discardEmpty | ✅ | ✅ | ✅ |
| discardOverridden | ✅ | ✅ | ❌ |
| discardUnused | ❌ | ✅ | ❌ |
| mergeIdents | ❌ | ✅ | ❌ |
| mergeLonghand | ✅ | ✅ | ❌ |
| mergeRules | ✅ | ✅ | ❌ |
| minifyFontValues | ✅ | ✅ | ❌ |
| minifyGradients | ✅ | ✅ | ❌ |
| minifyParams | ✅ | ✅ | ❌ |
| minifySelectors | ✅ | ✅ | ❌ |
| normalizeCharset | ✅ | ✅ | ❌ |
| normalizeDisplayValues | ✅ | ✅ | ❌ |
| normalizePositions | ✅ | ✅ | ❌ |
| normalizeRepeatStyle | ✅ | ✅ | ❌ |
| normalizeString | ✅ | ✅ | ❌ |
| normalizeTimingFunctions | ✅ | ✅ | ❌ |
| normalizeUnicode | ✅ | ✅ | ❌ |
| normalizeUrl | ✅ | ✅ | ❌ |
| normalizeWhitespace | ✅ | ✅ | ✅ |
| orderedValues | ✅ | ✅ | ❌ |
| reduceIdents | ❌ | ✅ | ❌ |
| reduceInitial | ✅ | ✅ | ❌ |
| reduceTransforms | ✅ | ✅ | ❌ |
| svgo | ✅ | ✅ | ❌ |
| uniqueSelectors | ✅ | ✅ | ❌ |
| zindex | ❌ | ✅ | ❌ |
你可以通过我们的 预设(preset)指南 了解更多信息。