在LESS中为类名连接字符串

Moh*_*ain 1 css less

我正在将LESS转换为CSS,我想在下面运行LESS函数:

.myPL( @val ) {
   .pL @val{
    padding-left:@val;
   }
}
Run Code Online (Sandbox Code Playgroud)

功能调用:

.myPL( 20px );
Run Code Online (Sandbox Code Playgroud)

预期结果:

.pL20px{padding-left:20px}
Run Code Online (Sandbox Code Playgroud)

但实际结果是语法错误.

请帮我在LESS中连接类名中的字符串.

Mar*_*jak 8

您正在寻找的是选择器插值 ...您可以在这里找到它:http://lesscss.org/#-selector-interpolation

你的mixin需要看起来像这样才能工作:

.myPL( @val ) {
  .pL@{val} {
    padding-left: @val;
  }
}
Run Code Online (Sandbox Code Playgroud)

  • @bcackerman最好的是将字符串插入到字符串插值中...例如,首先执行`@val2:@val*2;`然后在`.pL - @ {val2}`中使用新的val.然后在属性中,您还可以使用`unit()`向数字添加单位. (2认同)