我正在尝试使用LessCss创建一个函数,但是我收到错误:
.transparent-border (@alpha:.15, @color:'0,0,0', @type: solid, @size:1px) {
@val: @size @type rgba(@color, @alpha);
border: @val;
}
错误
错误评估函数rgba
@val:@size @type rgba(@color, @alpha)
;
我该如何解决?
答案 0 :(得分:2)
请改用此代码:
.transparent-border (@alpha:.15, @r:0, @g:0, @b:0, @type: solid, @size:1px) {
@val: @size @type rgba(@r, @g, @b, @alpha);
border: @val;
}
它不仅有效,而且更有意义。在您之前的尝试中,您必须以字符串形式传递颜色:
#myElement{
/*Old, not-working implementation*/
.transparent-border (0.15, "0, 0, 0", solid, 1px);
/*New, neat and working method */
.transparent-border (0.15, 0, 0, 0, solid, 1px);
/*Since these are the default settings, it's equivalent to*/
.transparent-border
}
Parsed LESS:
#myElement {
border: 1px solid rgba(0,0,0, 0.15);
}