是否有可以在css文件中使用的NOOP规则?

时间:2011-11-18 00:33:01

标签: css minify

我正在对遗留代码进行一些重构,以便将样式从html移到样式表文件中。我们的构建过程通过YUI compresser minifier运行样式表css文件。哪个效率除去空.selector { }样式,请参阅 - YuiDoc's No empty declarations section

在某些地方,代码找到并修改样式表规则时会出现问题,但它无法找到已缩小/剥离的规则。是否存在noop规则它们不会影响任何渲染,但会在样式表中保留有效的空规则吗?

1 个答案:

答案 0 :(得分:4)

根据W3C CSS2 Specification

  

在CSS中,标识符可以以“ - ”(破折号)或“_”(下划线)开头。   以 - '或'_'开头的关键字和属性名称保留用于   特定于供应商的扩展

因此,您可以创建自己的属性,例如-custom-noop: noop;,而不会让验证者抱怨太多。但是,如果你使用它,你可能会对旧版浏览器有一些问题忽略块中的其他规则。

编辑: 您可能也会对此语法感到满意:

.someclass{
    /*! Keep Me */
}

这样的注释会在压缩后保留,因此可能会保留注释内部的块。请注意,压缩后!被剥离,因此每次压缩都需要将其添加回来。