SCSS(Sass)计算:#{}

12
我目前对于计算字体大小感到困惑。
这是我已经使用的正常计算公式: font-size: #{($font-size*0.7) / $em}em 现在我想要将类似上面的整个语句除以另一个,听起来很复杂。
所以我有#{($font-size*0.7) / $em}#{($font-size*0.8125) / $em} 我现在想要将这两个值相除...
所以font-size: #{($font-size*0.7) / $em} / #{($font-size*0.8125) / $em}em 但是这不起作用。有什么办法可以用SASS进行这样的计算吗?
2个回答

25

尝试:

font-size: #{(($font-size*0.7) / $em) / (($font-size*0.8125) / $em)}em

在进行计算后,将插值返回到字符串中#{...}应该是最后一件事。


9

ScottS的回答在技术上似乎是正确的,但是你为什么需要这样一个复杂的表达式呢?如果用分数表示,这可以简化为

($font-size * 0.7 / $em) / ($font-size * 0.8125 / $em) = 0.7 / 0.8125

您的最终表达式应该是:
font-size: #{(0.7/0.8125)}em

难道不是吗?


1
+1 个优秀的观点。我完全忽略了操作顺序和使用的值使其减少的事实。事实上,即使您的答案可能实际上可以进一步缩小到类似于 font-size:0.86153em(或任何所需的舍入),分数已经预先计算出来,这样既可以省去除法,又可以避免对插值进行字符串处理。 - ScottS
@ScottS:你说得对,我只是假设十进制小数最终会被变量替换。 - Oleg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接