【发布时间】:2014-10-18 03:01:25
【问题描述】:
在下面的 SCSS 中,我想在 url background-image 属性中使用 fg-color 变量。
$fg-color: #ff6464;
i.icon-back {
background-image: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 20'><path d='M10,0l2,2l-8,8l8,8l-2,2L0,10L10,0z' fill='%23ff6464'/></svg>");
}
此时,变量的值在 SVG 字符串中简单地重复,如下所示:
fill='%23ff6464'
我希望在 fg-color 变量更新时自动更新。
我该怎么做?
更新:
这个输入 SCSS:
i.icon-back {
background-image: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 20'><path d='M10,0l2,2l-8,8l8,8l-2,2L0,10L10,0z' fill='$fg-color'/></svg>");
}
输出这个 CSS:
i.icon-back {
background-image: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 20'><path d='M10,0l2,2l-8,8l8,8l-2,2L0,10L10,0z' fill='$fg-color'/></svg>");
}
...完全一样——变量没有被处理。
注意:
我已经查看了这些问题,这些问题看起来相似,但并不相同:
【问题讨论】:
-
@cimmanon 我会忽略你评论的刻薄。无论如何,是的,我尝试过使用该变量,而我得到的输出根本没有做任何替换。我将更新我的问题以准确显示我得到的结果。
-
@cimmanon 我找到了一种方法来做到这一点。事实证明,这比简单地“使用变量”要复杂得多。