css – Less – 如何将@variable插入属性(而不是值)

在less.js中,我能够用变量替换值而没有问题.
@gutter: 20px;
margin-left:e(%("-%d"),@gutter);

当尝试用变量替换属性时,我得到错误.我如何在Less中执行以下操作?

@gutter: 20px;
@direction: left;
e(%("margin-%d"),@direction):e(%("-%d"),@gutter);

解决方法

感谢Alvivi的解决方案和研究(您可以获得奖励).我决定添加以下作为实际答案,因为这是一个真正的设置方式而不是查看.blah()伪代码.

这是设置它的真正策略:

@gutter: 20px;
@dir: left;
@dirOp: right;

然后创建mixins来增强边距和填充,如下所示:

.margin(left,@dist:@gutter) {
    margin-left:@dist;
}
.margin(right,@dist:@gutter) {
    margin-right:@dist;
}
.padding(left,@dist:@gutter) {
    padding-left:@dist;
}
.padding(right,@dist:@gutter) {
    padding-right:@dist;
}
.lr(left,@dist: 0) {
    left: @dist;
}
.lr(right,@dist: 0) {
    right: @dist;
}

..那么你可以

#selector {
    .margin(@dir);
}

要么

#selector {
    .margin(@dirOp,10px);
}

全部一起:

#selector {
    .margin(@dir);
    .margin(@dirOp,50px);
    .padding(@dir,10px);
    .padding(@dirOp);
    float:@dir;
    text-align:@dirOp;
    position:absolute;
    .lr(@dir);
}

轻松轻盈LTR / RTL,轻松!活泉!

相关文章

Css3如何实现鼠标移上变长特效?(图文+视频)
css3怎么实现鼠标悬停图片时缓慢变大效果?(图文+视频)
jquery如何实现点击网页回到顶部效果?(图文+视频)
css3边框阴影效果怎么做?(图文+视频)
css怎么实现圆角边框和圆形效果?(图文+视频教程)
Css3如何实现旋转移动动画特效