我最近为Visual Studio 2010安装了Chirpy v2.01,并对它提供的功能感到非常兴奋。但是,我在LESS域中遇到了一些问题。
作为第一步,我将现有的.css文件复制到新的LESS文件中。我马上得到两个错误。第一个是由于我设置的CSS“过滤器”属性:
div.someClass {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#aaaaaa', endColorstr='#000000');
}
这显然是因为过滤器值在技术上不是有效的css。 LESS通过转义有一个解决方法。在引用部分前面添加波浪号告知LESS保持该值不变。以下更改应解决此问题:
div.someClass {
filter: ~"progid:DXImageTransform.Microsoft.gradient(startColorstr='#aaaaaa', endColorstr='#000000')";
}
保存文件后,我仍然会在visual studio错误控制台中收到错误:
错误54文件'C:\ Users \ Administrator \ Projects \ Project \ Content \ test.chirp.less'中第2行的预期'}': [1]:身体{ [2]:filter:〜“progid:DXImageTransform.Microsoft.gradient(startColorstr ='#aaaaaa',endColorstr ='#000000')”; ---- ^ [3]:} C:\ Users \ Administrator \ Projects \ Project \ Content \ test.chirp.less 2 5 Project
只要出现此错误,就不会生成.css文件。我遇到the following site似乎描述了我遇到的问题,但是在一个更通用的DotLess .NET包中。我尝试将此软件包添加到我的项目中,但它没有任何区别。看起来它依赖于服务器来处理.less到.css的转换,而不是像chirpy那样处理IDE。
我经常收到的第二个错误,虽然它实际上似乎没有停止生成.css文件,但是如下:
错误53致命错误,无法继续:null无法转换为对象C:\ Users \ Administrator \ Projects \ Project \ Content \ test.css 1 1项目
我真的很喜欢使用Chirpy提供的LESS功能,但在我弄清楚为什么会发生这些错误之前,我只能将它用于mash。
答案 0 :(得分:1)
你必须明白,Chirpy只是在内部使用dotlesscss将less转换为css。
所以dotless中的任何错误也适用于Chirpy。
我们最近修补了这个bug,并且即将发布一个新的dotlesscss版本..但是,在新版本的Chirpy更新由Chirpy开发人员完成之前需要多长时间..
问候丹尼尔
答案 1 :(得分:1)
我编写了一个类似的VS扩展,编译较少,但它直接使用less.js而不依赖于无点。 Check it out。