Less 逃逸表达式

Less 逃逸表达式,less,Less,我正在使用LessCSS、java和colorbox。Colorbox有一个css文件。其中一种样式如下所示: .cboxIE6 #cboxMiddleRight { _behavior: expression(this.src = this.src ? this.src : this.currentStyle.backgroundImage.split('"')[1], this.style.background = "none", this.style.filter = "progi

我正在使用LessCSS、java和colorbox。Colorbox有一个css文件。其中一种样式如下所示:

.cboxIE6 #cboxMiddleRight {
    _behavior: expression(this.src = this.src ? this.src : this.currentStyle.backgroundImage.split('"')[1], this.style.background = "none", this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + this.src + ", sizingMethod='scale')");
}
似乎我需要使用转义字符。当lesscss编译该文件时,我发现了错误

javax.servlet.ServletException: Parse Error: Syntax Error on line 77 (line 77, column 1) near
.cboxIE6 #cboxMiddleRight {
 _behavior: expression(this.src = this.src ? this.src : this.currentStyle.backgroundImage.split('"')[1], this.style.background = "none", this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + this.src + ", sizingMethod='scale')");
}
然后我尝试了这个

.cboxIE6 #cboxMiddleRight {
    _behavior: ~"expression(this.src = this.src ? this.src : this.currentStyle.backgroundImage.split(\'\"\')[1], this.style.background = \"none\", this.style.filter = \"progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\" + this.src + \", sizingMethod=\'scale\')\")";
}
但是。我得到一个错误,说我错过了一个结束“}”

我不知道如何解决这个问题。当然这是件简单的事,但我解决不了

以下是无java css配置(web.xml):


较少的
com.asual.lesscss.LessServlet
压缩
真的
隐藏物
假的
1.
资源
com.asual.lesscss.ResourceServlet
2.
较少的
*.css
有什么想法吗


提前谢谢。

这对我来说很好:

.cboxIE6 #cboxMiddleRight {
  _behavior: ~`this.src = this.src ? this.src : this.currentStyle.backgroundImage.split('"')[1], this.style.background = "none", this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + this.src + ", sizingMethod='scale')"`;
}
但它也尝试在编译时执行JavaScript。为了避免这种情况,您可以再添加一个引号:

.cboxIE6 #cboxMiddleRight {
  _behavior: ~`"\"this.src = this.src ? this.src : this.currentStyle.backgroundImage.split('\\\"')[1], this.style.background = \\\"none\\\", this.style.filter = \\\"progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\\\" + this.src + \\\", sizingMethod='scale')\""`;
}
虽然看起来很难看,但归结起来:

.cboxIE6 #cboxMiddleRight {
  _behavior: "this.src = this.src ? this.src : this.currentStyle.backgroundImage.split('\"')[1], this.style.background = \"none\", this.style.filter = \"progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\" + this.src + \", sizingMethod='scale')";
}

非常感谢。很抱歉耽搁了。。太忙了。它非常有效(第二种方法)
.cboxIE6 #cboxMiddleRight {
  _behavior: "this.src = this.src ? this.src : this.currentStyle.backgroundImage.split('\"')[1], this.style.background = \"none\", this.style.filter = \"progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\" + this.src + \", sizingMethod='scale')";
}