我对gulp和uncss不熟悉,不确定我的逻辑是否有缺陷,或者我是否无法实现。

我希望uncss忽略一系列以特定字符串为前缀的CSS规则,但是在其声明中链接了许多复合选择器。

我知道我们可以在ignore语句中使用正则表达式,并且希望使用正则表达式忽略所有以我的前缀开头的规则。但是我不确定ignore中的正则表达式仅覆盖选择器中的一个类还是整个规则。

例如我希望gulp-uncss忽略所有以.foo为前缀的CSS规则

.foo .bar {...}
.foo-baz {...}
.foo-ballz .bazzie:hover {...}

和我的gulp-uncss规则(似乎没有按预期工作)
.pipe(uncss({
     html: ['index.html'],
     ignore: ['/^.foo/']
}))

一切都可以编译,但是我似乎丢失了一些(但不是全部)所需的CSS。我有什么想念的吗?谢谢!

最佳答案

我想我解决了自己的问题。在我们的ignore语句中,我发现您不必将正则表达式用引号引起来。

因此:

.pipe(uncss({
     html: ['index.html'],
     ignore: [/^\.foo/]
}))

似乎对我来说还可以!

关于css - 针对gulp-uncss中的复合选择器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29199217/

10-13 01:01