无法将函数作为mixin的参数传递

Ithil

我正在尝试在Sass中创建一个mixin以用于:hover动作,但是我无法使其工作。

我声明了mixin:

@mixin hover($action, $color, $amount) {
    color: $action($color, $amount);
}

我的想法是使用Sass脚本功能通过基本变或变暗来更改悬停时链接的颜色。因此,例如,我尝试:

a {
    &:hover {
        @include hover(darken, $footer-text-color, 5%);
    }
}

$footer-text-color 是我先前定义的等于十六进制颜色的变量,例如#84b3c8。

我希望这与

 a {
    &:hover {
        color: darken($footer-text-color, 5%);
    }
}

相反,它在普通CSS中的编译方式是:

color: darken #84b3c8, 5%;

因此,很明显,颜色功能无法正常工作,但我真诚地无法理解为什么。我确定这有点愚蠢,也许是mixin参数中的变量和字符串值之间的混合?

西曼侬

函数和混入不是Sass中的一流函数,这意味着它们不能作为参数传递给其他函数或混入。

在Sass 3.3中,有一个名为的新函数call(),它将为您提供所需的行为:

@mixin hover($action, $color, $amount) {
    color: call($action, $color, $amount);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将矩阵作为参数传递给函数

来自分类Dev

将函数作为参数传递给操作

来自分类Dev

Scala:将咖喱函数作为参数传递

来自分类Dev

将函数作为APL中的参数传递

来自分类Dev

将代码作为函数参数传递

来自分类Dev

无法将函数作为mixin的参数传递

来自分类Dev

将嵌套函数作为参数传递

来自分类Dev

将属性名称作为参数传递给mixin LESS

来自分类Dev

将函数作为参数传递(Lambda)

来自分类Dev

将多维数组作为函数参数传递

来自分类Dev

将函数作为参数传递给函数

来自分类Dev

将函数调用作为参数传递

来自分类Dev

将函数作为参数传递并重载

来自分类Dev

将函数作为最终参数传递

来自分类Dev

无法将变量作为onClick函数中的参数传递

来自分类Dev

将函数作为函数参数传递

来自分类Dev

将命名函数作为参数传递

来自分类Dev

将聚合函数作为参数传递

来自分类Dev

无法将字典作为参数传递给VBA函数

来自分类Dev

将泛型函数作为参数传递

来自分类Dev

将函数作为参数传递

来自分类Dev

将动画函数作为参数传递

来自分类Dev

将类方法作为函数参数传递

来自分类Dev

将数组作为参数传递给函数

来自分类Dev

将函数作为参数传递

来自分类Dev

将属性名称作为参数传递给mixin LESS

来自分类Dev

无法将变量作为onClick函数中的参数传递

来自分类Dev

将 ko observable 作为参数传递给 jade mixin

来自分类Dev

将函数作为参数传递给函数