有什么工具可以合并CSS吗?
我有几个CSS文件重叠的CSSselect器,我想以编程方式合并(不只是将一个文件附加到另一个文件的末尾)。 有没有什么工具可以在网上做到这一点? 或者可能是Firefox扩展?
我发现因子CSS – 完整的源代码,但我认为它的方式比我所需要的。 我真的只想结合具有相同select器的CSS块。 我将检查出源代码,看看它是否可以转换成可用的TextMate包。 也就是说,除非别人设法在我之前得到它。
编辑:甚至更好 – 这里是检查/格式/优化CSS的基于Web的工具列表 。
不,我希望有,但编程工作似乎太多,因为有多种方法来引用单个元素。 你可以做的最好的方法是使用像FireBug这样的运行库来查找重复项。
我几年前写了一个Perl实用程序来做到这一点。
除了将一个或多个样式表合并成一个连贯的sorting输出(完整的注释以显示每个属性出现在哪个文件中,以及当属性具有冲突的值时发出警告),还可以根据select器,属性或两者。
这些都是智能处理,例如,如果你search属性font
你也可以得到font-size
, font-weight
等(仍然呈现在CSS块与他们被从相关的select器)。 同样,select器search试图做正确的(即通常最有用)的事情。 如果您search元素a
,它将匹配任何其select器为a
, a:hover
, a.extlink
, a#mylink
, .foo a
, a#mylink
#bar a
, pa
, pre > a
, a + p
, a img
…(最后两个不直接影响a
本身的样式,而是直接影响相邻或后代元素的样式,在这样的search中常常是有用的),而不会匹配#a
, .a
当然这个行为是可选的,你也可以search一个确切的select器。 或者是一个正则expression式。
除了perl本身,唯一的依赖是CSS :: Tiny
这是免费的软件,你可以在这里find它: cssmerge