LessCSS - IE gradient filter with variables and li

2019-02-23 07:20发布

I need to have an IE gradient filter in Less CSS with a variable and lighten. Is this possible?

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

2条回答
甜甜的少女心
2楼-- · 2019-02-23 08:00

You can insert variables into string and "print them" in process of concatenation.Empty string need for get string as rezult of concatenation. All variables will be insert into string

@filterStr: "progid:DXImageTransform.Microsoft.gradient( startColorstr='@{upper}', endColorstr='@{bottom})',GradientType=1 )";
@emptyStr: "";
filter:e(@filterStr+@emptyStr);
查看更多
再贱就再见
3楼-- · 2019-02-23 08:22

As far as I know you can't mix escaping (because that's what you need here) and colour functions (lighen). So you'll need to store the startColor value in another variable.

@grayColor :#ffffdffffd;
@greenColor : #ff0000;
@start : lighten(@grayColor, 3%);
.css {
   filter:~"progid:DXImageTransform.Microsoft.gradient(startColorstr='@{start}', endColorstr='@{greenColor}', GradientType=0)";
}
查看更多
登录 后发表回答