我有一个很大的CSS文件,我想转换成更少的文件。当我写CSS时,我不知道less.css,但是现在我仍然想使用我的旧CSS。
有没有可以帮助我自动转换的工具?
我有一个很大的CSS文件,我想转换成更少的文件。当我写CSS时,我不知道less.css,但是现在我仍然想使用我的旧CSS。
有没有可以帮助我自动转换的工具?
Answers:
我实际上现在发现了一些东西:http : //leafo.net/lessphp/lessify/
它执行基本格式化,例如:
#header {
/* ... */
}
#header p {
/* ... */
}
至
#header {
/* ... */
p {
/* ... */
}
}
实际上,您不需要任何转换工具即可开始使用LESS。LESS语法与CSS向后兼容。这意味着任何CSS文件也是有效的LESS文件。
只需获取CSS并将其重命名为LESS文件即可。然后,使用LESS特定的功能以及所做的更改。您更新文件的次数越多,使用LESS功能的能力就越强。
我对SCSS和包含10个CSS文件的非常大的项目也进行了相同的操作。用SCSS重写所有CSS几乎是不可能的(并且非常浪费时间)。我只是简单地对其进行了重命名,然后每次使用CSS文件时,我都会在代码上执行一些小的重构,以利用mixin,变量等。
你看过最少了吗?与CSS相比,转换CSS更好。特别是,Lessify不能很好地优化您的类。它将浏览器重置复制到其所有生成的mixin,从而创建冗余属性。显然,它仍处于试验阶段。两种实用程序都无法确定语义,因此它们无法将值转换为表达式,var或参数混合。
最少可以更好地进行优化,而且似乎功能更强大。它甚至为您处理伪类:
这些工具是使用大型现有CSS文件的理想选择。以下是我建议将CSS转换为LESS的步骤(请确保保留原始CSS文件的副本):
如果要使用多个附加CSS文件,请将它们合并到一个CSS文件中。这样可确保一切都无需进行优化。
通过在线CSS清理实用程序运行生成的CSS代码。使用cleancss取得了不错的效果:http ://www.cleancss.com/ 。这将删除LESS转换器可能无法捕获的任何多余和多余的标记。
删除@Media并重置CSS文件中的所有样式。它们可能会产生问题或引入可能的冗余。将重置保存在单独的文件中可能是一个好主意。
将生成的CSS文件粘贴到Least中并观看野兽。
重新介绍您的重置和@screen。
现在您已经完成了,遍历每个属性,找到合适的重构候选者,并将它们转换为LESS变量和表达式。CSS颜色和字体属性是最容易排除的属性,简单的全局搜索和替换效果很好。最后,您可以决定是否要将单个文件分解为较小的逻辑文件。您可能会发现该过程使您以其他方式重新组织文件。
我不是Least的作者,而是寻找类似工具并决定向世界介绍这一工具的人。
@import
吗?我认为LESS能够解析@import
语句,并在编译LESS文件时将所有样式表合并为一个CSS。似乎将所有组织得井井有条的CSS都转储到单个巨型样式表中,以便将其转换为LESS,这将是可维护性的倒退。
我认为转换器没有任何方法可以知道您想对大部分代码执行的操作。
例如,它不一定知道您要使用哪些变量。或如何生成mixin或函数。
我认为使用此工具需要手动进行。
如何搜索和替换。
如果您有color:#ffffff
并且想要将其更改为@color
只需搜索color:#ffffff
或color : #ffffff
替换为即可@color
。
我通常不相信这些工具。
或者您可以编写一个非常简单的PHP脚本来处理它。
更新1:
或者,您可以使用http://nex-3.com/posts/96-scss-sass-is-a-css-extension,它与less类似,并且具有转换工具。
试试这个网站:css2less.cc
键入时,它将CSS转换为LESS。