Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用less.js在元素中使用计算值_Less_Less.js - Fatal编程技术网

使用less.js在元素中使用计算值

使用less.js在元素中使用计算值,less,less.js,Less,Less.js,具有以下代码位: generate-margins(4); .generate-margins(@n, @i: 1) when (@i =< @n) { .marginleft@{i} { margin-left: (5px * @i); } .marginright(5*@{i}) { margin-right: (5px * @i); } .generate-margins(@n, (@i + 1)); } 我想要的是: .marginrigh

具有以下代码位:

generate-margins(4);

.generate-margins(@n, @i: 1) when (@i =< @n) {
  .marginleft@{i} {
    margin-left: (5px * @i);
  }
  .marginright(5*@{i}) {
    margin-right: (5px * @i);
  }

  .generate-margins(@n, (@i + 1));
}
我想要的是:

.marginright5 {... }
.marginright10 {... }
...

如何在元素名称中使用计算值?我尝试使用所有字符串函数,但没有成功。非常感谢您的帮助。

又做了一些测试,得出以下结论:

  .generate-margins(@n, @i: 1) when (@i =< @n) {
    @l : @i*5;
  .marginleft@{l} {
    margin-left: (5px * @i);
  }
  .marginright@{l} {
    margin-right: (5px * @i);
  }

  .generate-margins(@n, (@i + 1));
}
。在(@i=<@n)时生成页边距(@n,@i:1){
@l:@i*5;
.marginleft@{l}{
左边距:(5px*@i);
}
marginright先生{l}{
右边距:(5px*@i);
}
.生成页边距(@n,(@i+1));
}

我还是想知道还有没有别的办法。干杯。

又做了一些测试,得出以下结论:

  .generate-margins(@n, @i: 1) when (@i =< @n) {
    @l : @i*5;
  .marginleft@{l} {
    margin-left: (5px * @i);
  }
  .marginright@{l} {
    margin-right: (5px * @i);
  }

  .generate-margins(@n, (@i + 1));
}
。在(@i=<@n)时生成页边距(@n,@i:1){
@l:@i*5;
.marginleft@{l}{
左边距:(5px*@i);
}
marginright先生{l}{
右边距:(5px*@i);
}
.生成页边距(@n,(@i+1));
}

我还是想知道还有没有别的办法。干杯。

哦,不,您不能在选择器中使用任何表达式。只有变量。不,不能在选择器中使用任何表达式。只有变量。