SASS缩小器可以删除重复的样式吗?

CSS

Eva神奇

2020-03-23

我知道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;
}

我知道有多余的样式,但是在不断修改样式表时,会发生很多次,并且我想消除无效的代码。

第3100篇《SASS缩小器可以删除重复的样式吗?》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

2个回答
宝儿乐 2020.03.23

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

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

它似乎能够检测到重复项,尽管我不得不绕过自举程序的gem的css进行修补,而不是与css资产位于同一文件夹中。

从文档中,您可以运行:

$ csscss -v path/to/styles.css

要么

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

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

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

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android