我希望为我们企业形象中使用的所有颜色创建一个小概述。所有的颜色都在_settings-colors.scss中定义,我需要这段css代码的唯一原因是为了图书馆,在那里需要列出颜色。
现在我所拥有的是如下所示:
这些颜色品牌变量是在另一个文件中设置的,我在这个scss文件中引用它。
上述代码输出如下结果:
我所追求的是这个:
我遇到的问题是$color-brand变量不再被解释为sass变量,而是一个文字值。我需要这个变量所指向的#hheexx颜色值!
到目前为止,我找到的所有解决方法都包括使用两个列表或键值对。在我的情况下,这些变量已经被设置一次,我希望找到一个解决方案,在颜色更改时无需手动编辑库。
这是否可能,或者我太贪心了?
现在我所拥有的是如下所示:
$colors-brand: color-brand, color-brand-40, color-brand-60, color-brand-70;
.prfx-color {
display: block;
height: 5rem;
width: 100%;
@each $color in $colors-brand {
&--#{$color} {
background-color: #{'$'+$color};
&::after {
content: '$'+$color;
}
}
}
}
这些颜色品牌变量是在另一个文件中设置的,我在这个scss文件中引用它。
上述代码输出如下结果:
.prfx-color {
display: block;
height: 5rem;
width: 100%;
}
.prfx-color--color-brand {
background: $color-brand;
}
.prfx-color--color-brand::after {
content: "$color-brand";
} [...etc]
我所追求的是这个:
然而,我需要的是:
.prfx-color--color-brand {
background: #00ff11; // don't worry, brand is not actually this color
}
我遇到的问题是$color-brand变量不再被解释为sass变量,而是一个文字值。我需要这个变量所指向的#hheexx颜色值!
到目前为止,我找到的所有解决方法都包括使用两个列表或键值对。在我的情况下,这些变量已经被设置一次,我希望找到一个解决方案,在颜色更改时无需手动编辑库。
这是否可能,或者我太贪心了?