Gulp / webpack css特异性去除剂

时间:2018-04-06 22:39:30

标签: webpack sass gulp gulp-sass css-specificity

嘿,我们有很多6岁的传统css用sass构建。

不幸的是,在过去的一年里,人们对这一切感到有点生气,现在我们已经拥有了15个特异性水平。这意味着我们编译的压缩CSS非常庞大。

由于我们即将在redux中完全重建我们的网站,管理层不希望花费资源来清理CSS,这是可以理解的。

我想知道的是一个快速解决方案是gulp / webpack的插件可以编程方式清除构建管道中不需要的特性吗?

1 个答案:

答案 0 :(得分:2)

我写了一些应该有助于解决这个问题的东西:]。 https://github.com/felixmosh/postcss-decrease-specificity

这个postcss插件减少了嵌套超过options.depth的默认类选择器的数量(默认为3)。

此插件支持几种情况:

  • .a .b .c .d - > .b .c .d
  • tag .a .b .c .d - > tag .b .c .d
  • #id .a .b .c .d - > #id .b .c .d
  • .a .b > .c - > .a .b > .c
  • .a .b .c .d .e > .f - > .c .d .e > .f

如需更多支持的案例,请检查tests

我知道这个插件并没有涵盖所有的情况,并不完美,但有了PR,我们可以让它更合适。

⚠️谨慎使用此插件,可能会破坏您的设计。