我正在尝试将LESS文件编译成CSS文件(两者都位于同一目录中,名称相同)。
问题是我不断得到:
1 css文件应以@charset'UTF-8'开头;
@import "color-theme.less"; // Line 4, Pos 2 #2 Stopping. (0% scanned). // Line 4, Pos 2 [Finished in 0.3s]
我根据那个修改我的.LESS文件,但无济于事。我甚至输入了一个简单的陈述,例如:
body{
background-color: red;
}
它仍然无法编译。重要的是,昨天它正在运作,今天却没有。我不确定是什么原因引起的。
我使用less2css,jsLint和Sublime Text 2。
答案 0 :(得分:1)
错误消息“css文件应以@charset'UTF-8'开头;”来自JSLint。
在机器生成的CSS代码上运行JSLint没有多大意义。一方面,它会发现很多抱怨(例如,空白);而另一方面,该代码的清洁度并不是非常重要 - 最重要的是手写的LESS代码的清洁度。
Fwiw,你应该能够通过将@charset 'UTF-8';
放在LESS文件的开头来修复charset警告 - 这应该继续生成的CSS。它适用于这个简单的例子:
@charset 'UTF-8';
body {
background-color: red;
}
如果将其粘贴到http://lesstester.com/,您将获得此CSS输出:
@charset 'UTF-8';
body{background-color:red;}
但是这已经展示了它是如何失败的战斗:不再有charset警告了,但是JSLint却抱怨第二行的空白。
IMO最好的选择是忽略生成的CSS文件上的任何JSLint警告。如果Sublime JSLint插件允许您指定某些文件自动忽略/排除linting,甚至更好。