CSS优化自动更改类名

时间:2014-04-09 10:01:15

标签: javascript php html css optimization

我正在寻找一种工具来优化我的网站的完整版本。我使用SASS作为CSS preprocessorUglify来创建我的JavaScript文件,还有一些工具都与Grunt绑定在一起。此外,标记在这种情况下是单个index.html文件,但在其他项目中,它位于PHP文件或Liquid模板中。

我使用BEM(block, element, modifier)来命名我的课程,有时会导致非常大的classnames,例如navigation__item__link--home甚至更长。

我正在寻找一种工具,可以自动转换最终的构建CSS文件,使其将类或ID名称更改为.a, .b,但会更改每个HTML和JavaScript文件使用相同的方法,以便相关代码不会搞砸。

我当然希望保留原始项目文件,因此我希望该工具能够根据这些规则创建新文件,并且最好能够将其与Grunt一起使用。

2 个答案:

答案 0 :(得分:4)

听起来您正在寻找一种名为munch的工具。它是一种预部署工具,可以满足您的要求。它是一个命令行实用程序,您指向您的视图(html),css和js文件,它将缩短类名和ID,同时仍保持它们的唯一性并保持所有源文件之间的引用完整性。还有一些方便的选项,例如输出映射文件的功能,列出它所做的转换。文档很简单。

FWIW,我不参与该项目。

答案 1 :(得分:0)

我会为此推荐Grunt

sass和css可以使用现有的grunt-sass插件完成,javascript可以使用grunt-uglify插件。

虽然我不确定是否有自定义uglification的插件,但您可以轻松编写插件来执行此操作。 Grunt插件是用节点编写的,所以如果你熟悉javascript,它就非常平易近人。