【发布时间】:2014-02-09 23:50:05
【问题描述】:
也许我对 PHP 太着迷了。如果是这样的话,按指控有罪。
我为对我的网站很重要的 WordPress 类别命名了一组变量。每一个都对应一个 RGBA 值,如下所示:
// Category Styles:
$technology : rgba(91, 23, 102, 1);
$science : rgba(186, 6, 38, 1);
$rochester : rgba(224, 64, 28, 1);
$politics : rgba(10, 82, 60, 1);
$journalism : rgba(224, 176, 11, 1);`
现在我想做的是创建一个 mixin,它会自动处理将这些颜色样式应用于类的大部分繁琐工作。这是我尝试的解决方案:
@mixin category-backgrounds( $collection: ( 'science', 'technology', 'politics', 'rochester', 'journalism' ) ) {
@each $category in $collection {
.bg-#{$category} {
background-color: $#{$category};
}
.fg-#{$category} {
color: $#{$category};
}
}
}
换句话说,我试图用集合元素的值代替变量的名称。我敢打赌,有一个简单的方法可以解决这个问题,但我是 SASS 和 Ruby 的新手。
当然,在 PHP 中,我可以有效地说 $$category,但在这里我不能。这似乎很大程度上是因为 #{} 插值在结果周围加上了引号。但是有没有办法做到这一点,我没有看到?还是更简单的方法?
非常感谢。
【问题讨论】: