我是gulp和uncss的新手,我不确定我的逻辑是否有缺陷,或者我的需要是不可能的。
我喜欢用unss来忽略一些以某个字符串为前缀的CSS规则,但是在声明中链接了许多复合选择器。
我知道我们可以在ignore
语句中使用正则表达式,并且我使用正则表达式希望忽略以我的前缀开头的所有规则。但我不确定忽略中的正则表达式是否只涵盖选择器中的一个类,或整个规则。
e.g。我希望gulp-uncss忽略所有以.foo
为前缀的CSS规则.foo .bar {...}
.foo-baz {...}
.foo-ballz .bazzie:hover {...}
我的gulp-uncss规则(似乎没有按预期工作)
.pipe(uncss({
html: ['index.html'],
ignore: ['/^.foo/']
}))
事情编译好了,但我似乎失去了一些(但不是全部)所需的CSS。我可能错过了什么?谢谢!
答案 0 :(得分:4)
我想我解决了自己的问题。在我们的忽略语句中,我发现你不必用正则表达式包装正则表达式。
因此:
.pipe(uncss({
html: ['index.html'],
ignore: [/^\.foo/]
}))
似乎对我有用了!
答案 1 :(得分:1)
或者,您可以在选择器之前使用忽略注释:
/* uncss:ignore */
但是,我更喜欢你的回答。我正在努力解决同样的问题,并在这里遇到了你的问题。