我想将SASS变量(它是一个映射值)除以2,如下所示:
<ul>
<li ng-repeat='country in countries'>{{country.name}} - {{country.population}} <a href="" ng-click="remove(country)">×</a></li>
</ul>
不幸的是我期望$grid-gutter-widths: (
xs: 30px,
sm: 30px
...
);
$col-padding-xs: #{map-get($grid-gutter-widths, xs)/2}; // returns 15px
div {
padding-right: $col-padding-xs / 2; // returns 15px/2
}
值为padding-right
但是它不会执行除法,而是返回一个中间带斜杠的字符串。然而,这似乎有效:
7.5px
因此地图值必须是错误的类型。是否有一种简单的方法可以将其作为数字投射,以便我可以在SASS中对其进行简单的数学运算?
感谢您的帮助!
答案 0 :(得分:2)
你非常接近。这是地图上插值的问题 - 你必须删除。您可以看到已编译的css的codepen。
$grid-gutter-widths: (
xs: 30px,
sm: 30px
);
$col-padding-xs: map-get($grid-gutter-widths, xs) / 2; // returns 15px
div {
padding-right: $col-padding-xs / 2; // returns 7.5px
}