一个基本的 CSS 示例。我遇到的每个浏览器都会使用边距和填充以及红色边框呈现项目
.test{
margin: 4px;
border: 1px solid black;
padding: 4px;
}
.test{
border: 1px solid red;
}
当然,如果我手动编写这个 CSS,我会将黑色替换为红色,并且只有一条规则。
但是,如果第一条规则来自我无法编辑的父 CSS 文件(或者在我的情况下是 LESS 文件),因为它在其他地方使用,或者来自我不想破解的第 3 方库,那么我看到别无选择,只能添加一个额外的规则。
现在,由于我使用的是服务器端 LESS -> CSS 编译和缩小,所以对我来说,压缩器/缩小器应该将规则减少到只是
.test{
margin: 4px;
border: 1px solid red;
padding: 4px;
}
但是我尝试过的一切都遵守了这两个规则;一些压缩器/压缩器甚至可以删除换行符
.test{margin:4px;border:1px solid black;padding:4px}.test{border:1px solid red}
它去掉了一个换行符,但留下了一个完全不必要的规则声明。这对我来说似乎很奇怪。
有没有系统可以做到这一点?(最好是 node.js 的附加组件)如果没有,我们知道为什么不吗?似乎节省了相当大的文件大小,对我来说没有任何不利之处。
免责声明我曾尝试搜索组合选择器、合并选择器和一些变体,如果我错过了此过程的常用术语,我很抱歉,因为收益似乎如此明显,我必须遗漏一些东西!