我正在尝试编写一个返回URL的SCSS函数。 (所以我可以像background-image: getURL(thing);
)
困难的是我想在其中插入参数,包括转义args,例如#
应该变为%23
,因此它是网址安全的。
Sass甚至可以做到这一点吗?
@function getURL($name, $color: #ffffff) {
// ???
}
// How I want it to work:
getURL('foo');
// returns: url("http://example.com/foo.png?color=%23ffffff")
// And if possible, this would be cool
// (accepting any color type, and turning it into a hex color):
getURL('bar', rgb(255,0,0));
// returns: url("http://example.com/bar.png?color=%23ff0000")
答案 0 :(得分:0)
您可以write your own Ruby method进行网址编码和颜色转换。看起来Color#inspect返回没有alpha值的颜色的十六进制表示。
您可以使用SASS' str-
index/insert/slice functions进行一些非常简单的网址编码。
伪造它可能更容易:
@function getURL($name, $color-hex-str: ffffff) {
@return url(http://example.com/#{$name}.png?color=%23#{$color-hex-str});
}