Answers:
根据sass准则,更合理的解决方案是对interpolate
变量进行如下处理:
margin: 0 -#{$pad} 20px -#{$pad};
范例:https://www.sassmeister.com/gist/c9c0208ada0eb1fdd63ae47830917293
在考虑之前的两个答案后,我添加了两分钱,但是请阅读以下内容(强调我的意思):
您尤其
#{$number}px
应该避免使用像这样的插值法。这实际上并没有创建数字!它创建一个看起来像数字的无引号的字符串,但不适用于任何数字操作或函数。尝试使数学单位整洁,以便$number
已经具有该单位px
,或编写$number * 1px
。
因此,我相信正确的方法如下,它保留了SASS / SCSS的数学能力:
$pad: 15px;
padding: 0 $pad $pad;
margin: 0 $pad*-1 20px $pad*-1;