如何连接Sass变量

时间:2017-09-19 06:07:58

标签: sass

如何连接Sass变量?

这是scss文件中的代码。

DATA: lt_seltab  TYPE TABLE OF rsparams,
        ls_seltab  LIKE LINE OF lt_seltab.

  ls_seltab-selname = 'WPLAN'.
  ls_seltab-KIND    = 'S'.
  ls_seltab-SIGN    = 'I'.
  ls_seltab-OPTION  = 'EQ'.
  ls_seltab-LOW     = '23'.
  APPEND ls_seltab TO lt_seltab.

  SUBMIT RISTRA20
    WITH SELECTION-TABLE lt_seltab AND RETURN.

我希望CSS文件中的结果为:

$url = 'siteurl.com';

#some-div{
    background-image: url(+ $url +/images/img.jpg);
}

我发现了这个问题,但它对我没有用: Trying to concatenate Sass variable and a string

4 个答案:

答案 0 :(得分:13)

这里有多个问题,正确的语法是

$url: 'siteurl.com';

#some-div{
  background-image: url($url + '/images/img.jpg');
}
  • 为变量指定值时,您需要使用:而不是=
  • 您应引用图片路径,因为它是一个字符串。
  • 删除+
  • 之前的迷路$url符号

您可以在SassMeister

看到上面的代码

答案 1 :(得分:0)

使用此:

$domain: 'domain.com';
#some-div {
    background-image: url('#{$domain}/images/img.jpg');
}

答案 2 :(得分:0)

最好通过内插( #{} )来实现,其中所有字符串都被取消引用。

$basePath= 'example.com';

#some-div{
    background-image: url('#($basePath)/images/img.jpg');
}

对于这种特殊用例,这是一种更安全的方法,因为您不希望在网址中添加任何其他引号。

答案 3 :(得分:0)

趣闻:LESS语法看起来像这样

background-image: ~"url("@domain~"/images/img.jpg)"