【发布时间】:2012-03-23 13:38:12
【问题描述】:
例如,我有以下规则的 test.css
.fs24 { font-size: 24px; }
.fc77777 { color: #777777; }
.fs24 { font-size: 20px; }
.fc77777 { color: #787878; }
我想要的是一个能够接受这个输入和输出的php方法
.fs24 { font-size: 24px; }
.fc77777 { color: #777777; }
如您所见,我想通过他们的 selector 检测并过滤出重复的 css 规则。 3个处所必须持有:
- 过滤后的 css 规则可以是 1 liner / multi line ,只要他们的 selector 之前存在,就必须过滤掉!
- 为此有很多字符串操作技术,我试图找出最快的方法来做到这一点,原因是我在生产中拥有的 CSS 应该很大(我们正在尝试将所有 CSS 文件合并到一个并过滤掉所有重复的排除)
- LIFO,后进先出,也就是不会被过滤的是第一个 CSS 规则,任何其他具有重复 选择器 的 CSS 规则都将被完全删除:|
【问题讨论】:
-
1.不同的选择器可以指向同一个元素 2. 你有没有尝试过或者你只是想让我们做你的工作?
-
您最好使用现有的浏览器开发工具,该工具已具备所有这些功能。 CSS 中的级联可不是小菜一碟(这就是它名副其实的原因)。
-
@Zerkms,我想要实现的是将 10 个 css 文件缩小为 1 个 css 文件,我希望减少服务器上的重复选择器...
标签: php css string preg-replace string-matching