3

我试图通过定义一组常量来使 SCSS 样式表易于配置,这些常量将在许多 mixin 和 Compass 库中使用。理想情况下,我希望能够执行以下操作:

$item-bgs: linear-gradient(white, black), #ccc;

@mixin some-mixin() {
    @include background-with-css2-fallback($item-bgs*);
}

background-with-css2-fallback是一个Compass mixin,最多接受 10 个参数。我假设 SASS 目前不支持将列表参数作为参数列表传递,否则 Compass 可能会使用它,但我想知道是否可以将列表作为mixin$item-bgs的前 2 个参数。background-with-css2-fallback目前有没有办法做到这一点,或者将来是否计划用于 SASS?

4

1 回答 1

1

SASS 本身可能不支持它,但 Compass 确实支持将列表作为第一个参数传递给background-with-css2-fallbackmixin。如果您查看 mixin 的源代码,您会发现它使用了一个compact函数来处理将参数折叠到单个列表中的逻辑,无论是单独传递还是在单个列表参数中传递。

例如,这对我来说很好:

@import "compass";

$item-bgs: (linear-gradient(white, black), #ccc);

.test {
    @include background-with-css2-fallback($item-bgs);
}
于 2012-06-19T16:22:08.960 回答