在很多关于比较LESS/SASS
的文章中,声称LESS
将在客户端使用CSS
代码转换为JavaScript
。
我还在ASP.NET MVC中发现了一个名为LessTransform
的东西,用于捆绑。
例如:
var bundle = new StyleBundle("~/Content/style").Include(
"~/Content/myStyles.less");
bundle.Transforms.Add(new LessTransform());
bundles.Add(bundle);
问题1:是否真的以这种方式填充LESS
服务器端?
大多数比较都注意到LESS是客户端(作为性能上的弱点),SASS与Ruby更好地集成。
问题2:是否因为LessTransform
使用ASP.NET MVC 4.0时LESS是一个更简单的选项?
答案 0 :(得分:3)
是的,在您的示例中,转换是服务器端的。可以在客户端编译它,但是捆绑这不是这种情况。当我说客户端我的意思是浏览器而不是所有浏览器都支持这个(仅限现代)。
我同意少在asp.net mvc中获得更多支持。 特别是Visual Studio Web Essentials支持less。
http://vswebessentials.com/features/less
我经常将它用于:
<强>更新强>
它确实支持Sass,但它有限并于2013年5月5日发布。
要证明.less是在服务器上编译的,如果将以下内容添加到bundle中的less文件中(未编译):
@color: #4D926F;
#header {
color: @color;
}
h2 {
color: @color;
}
然后查看在编译后的浏览器中返回的响应:
#header {
color: #4d926f;
}
h2 {
color: #4d926f;
}