2012-04-25 54 views
5

我需要在帶有變量和亮度的較少CSS中使用IE漸變過濾器。這可能嗎?LessCSS - 具有變量和亮度的IE漸變過濾器

#whatever { 
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='lighten(@grayColor, 3%)', endColorstr='@greenColor', GradientType=0); 
} 

回答

9

據我所知,你不能混合轉義(因爲這就是你需要的)和顏色函數(lighen)。所以你需要將startColor值存儲在另一個變量中。

@grayColor :#dddddd; 
@greenColor : #ff0000; 
@start : lighten(@grayColor, 3%); 
.css { 
    filter:~"progid:DXImageTransform.Microsoft.gradient(startColorstr='@{start}', endColorstr='@{greenColor}', GradientType=0)"; 
} 
0

您可以將變量插入字符串並在拼接過程中「打印它們」。空字符串需要將字符串作爲拼接的rezult。所有變量將被插入字符串

@filterStr: "progid:DXImageTransform.Microsoft.gradient(startColorstr='@{upper}', endColorstr='@{bottom})',GradientType=1)"; 
@emptyStr: ""; 
filter:e(@[email protected]);