我正在尝试编写对应于以下CSS代码的LESS代码,用于在IE中生成渐变.
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff9600',endColorstr='#ff6900');
以下是LESS代码:
.gradient(@start_color,@end_color) { filter:~"progid:DXImageTransform.Microsoft.gradient(startColorstr='"@start_color~"',endColorstr='"@end_color~"')"; } .gradient(#ff9600,#ff6900)
在编译时,它提供以下CSS代码:
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=' #ff9600 ',endColorstr=' #ff6900 ');
如您所见,在颜色值的两侧都插入了空格,因为IE无法正确读取颜色.
我使用http://crunchapp.net/和http://winless.org/编译了LESS代码,两者都提供了相同的结果.是否存在避免这些空间的黑客行为.谢谢.
解决方法
使用变量插值而不是结束字符串并重新启动它.
例如.
〜 “吧@ {name}的富”
并且不会插入任何空格.