SASS minifier可以删除重复的样式吗?

时间:2012-06-22 17:54:05

标签: css sass

我知道css规则相当复杂;但是,优化器可以通过多种方式简单地减少以下css吗?如果是这样,在rails-sass gem中是否有选项?

span {
    background: red;
    color: green;
}

.test2 {
    background: red;
    color: green;
}

span {
    background: green;
    color: inherit;
}

.test2 {
    background: inherit !important;
    color: inherit;
    color: inherit;
    color: inherit;
}

其他背景:

为了帮助澄清,我也会提出以下建议......

来源:

span {
    background: red;
}
span {
    background: orange;
    color: green;
}
span {
    background: yellow;
}
span {
    background: blue;
    color: green;
}

而且,我希望编译器生成以下内容:

span {
    background: blue;
    color: green;
}

我知道有多余的样式,但是在不断修改样式表时会发生这种情况很多次,我想要消除死代码。

2 个答案:

答案 0 :(得分:5)

我认为我可能已经找到了一种方法,至少可以在css和sass / less模板中找到重复的样式:

开源csscss gem http://zmoazeni.github.io/csscss/

它似乎能够检测到重复,虽然我不得不在bootstrap-sass gem的css周围修补补丁而不是与我的css资产在同一个文件夹中。

从文档中,您可以运行:

$ csscss -v path/to/styles.css

$ csscss -v path/to/styles.css.scss

答案 1 :(得分:0)

我不知道,SASS只会以不同方式格式化您的代码,但不会为您优化代码http://sass-lang.com/docs/yardoc/file.SASS_REFERENCE.html#output_style

扩展了Whymarrh的评论,CSSTidy有一个命令行实用程序,可以集成到构建过程或类似程序中,http://packages.ubuntu.com/hardy/csstidy