Sass返回的是负数列表,而不是减数

Sass返回的是负数列表,而不是减数,sass,Sass,我试着用长度做数学运算: $itemWidth: 25px; $item2Width: 80px; element { width: $itemWidth/2-$item2Width/2-5px } 但是,它会输出-52.5px-5px如何正确操作?将计算结果括在括号中。这告诉SASS整个事情都是计算的一部分 $itemWidth: 25px; $item2Width: 80px; element { width: ($itemWidth/2-$item2Width/2-5

我试着用长度做数学运算:

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

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

但是,它会输出
-52.5px-5px
如何正确操作?

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

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

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

将计算结果用括号括起来。这告诉SASS整个事情都是计算的一部分

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

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

Sass 3.2解析器似乎对运算符之间缺少空格感到困惑(它认为您的意思是负5px而不是减去5px):

这在Sass 3.3中是固定的,但您需要将Compass升级到1.0(因为0.12与Sass 3.3不兼容)


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

Sass 3.2解析器似乎对运算符之间缺少空格感到困惑(它认为您的意思是负5px,而不是减去5px):

这在Sass 3.3中是固定的,但您需要将Compass升级到1.0(因为0.12与Sass 3.3不兼容)


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

可能检查可能检查我所做的
($itemWidth/2-$item2Width/2-5px)
但它仍然生成
-52.5px-5px
@simPod您确定没有
($itemWidth/2-$item2Width/2-5px)在2和减号之间有空格吗?@Paulie_D是的,非常确定。我有这个
($itemWidth/2-$item2Width/2-5px)是,请参阅。这是什么魔法?我有指南针0.12.6圆括号没有任何作用。无论是否使用它们,您都会得到相同的结果(请参见:)。我使用了
($itemWidth/2-$item2Width/2-5px)
但它仍然生成
-52.5px-5px
@simPod您确定没有
($itemWidth/2-$item2Width/2-5px)在2和减号之间有空格吗?@Paulie_D是的,非常确定。我有这个
($itemWidth/2-$item2Width/2-5px)是,请参阅。这是什么魔法?我有指南针0.12.6圆括号没有任何作用。不管有没有它们,你都会得到相同的结果(见:)。哦,它确实有效,谢谢!我会检查那些较新的版本(虽然我都是通过gem安装的,所以我想我会得到最新的版本)compass0.12是稳定的版本,所以从技术上讲,你有最新的版本。要获得1.0版,您必须使用--pre标志(
sudo gem install compass--pre
)进行安装。哦,它实际上可以工作,谢谢!我会检查那些较新的版本(虽然我都是通过gem安装的,所以我想我会得到最新的版本)compass0.12是稳定的版本,所以从技术上讲,你有最新的版本。要获得1.0版本,必须使用--pre标志(
sudogem安装compass--pre
)进行安装。