Sass正在返回一个负数列表,而不是减去它们

时间:2014-07-03 11:46:37

标签: sass

我正在尝试使用长度进行数学运算:

$itemWidth: 25px;
$item2Width: 80px;

element {
    width: $itemWidth/2-$item2Width/2-5px
}

然而,它会输出-52.5px -5px如何正确执行?

2 个答案:

答案 0 :(得分:9)

Sass 3.2解析器似乎被操作符之间缺少空白感到困惑(它认为你的意思是负5px而不是减去5px):

element {
    width: $itemWidth / 2 - $item2Width / 2 - 5px;
}

这已在Sass 3.3中修复,但您需要将Compass升级到1.0(因为0.12与Sass 3.3不兼容)。

请注意,Sass将始终将前面带有破折号/连字符的数字视为否定。这意味着1 -2被视为包含正数1和负数2的数字列表,而不是评估为负数1。

答案 1 :(得分:3)

将计算括在括号中。这告诉SASS整个事情都是计算的一部分。

$itemWidth: 25px;
$item2Width: 80px;

element {
    width: ($itemWidth/2-$item2Width/2-5px);
}
相关问题