2

假设我有以下声明

.foo {
 .grid(1);
}

.grid(@num) {
  width: ... // Some calculated percentage
}  

现在后来我意识到我需要.foo宽 5% 是否有可能以某种方式.foo { width: +5%;}做或类似的事情?

4

1 回答 1

0

在 LESS 中,您无法直接获得该信息。您需要将.gridmixin 修改为:

.grid(@num, @adjust: 0) {
  width: (your regular calaculation) + @adjust; // Some calculated percentage
}

通过给它一个默认值0,那么你仍然可以.grid(1)在你想要的时候通过,但是如果.foo需要调整,你可以这样做:

.foo {
 .grid(1, 5%);
}

对于 SASS

我不是 100% 确定,但我相信 SASS 也不能直接访问该属性,并且基本上需要执行某种类型的类似解决方案,其中 mixin 计算本身会发生变化。

于 2013-02-01T15:59:55.353 回答