【发布时间】:2014-07-03 11:46:36
【问题描述】:
我正在尝试使用长度进行数学运算:
$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
}
但是,它输出-52.5px -5px 怎么做对呢?
【问题讨论】:
标签: sass
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。
【讨论】:
sudo gem install compass --pre) 进行安装。
将计算括在括号中。这告诉 SASS 整个事情都是计算的一部分。
$itemWidth: 25px;
$item2Width: 80px;
element {
width: ($itemWidth/2-$item2Width/2-5px);
}
【讨论】:
(-$itemWidth/2-$item2Width/2-5px);,但它仍然生成-52.5px -5px;
(-$itemWidth/2-$item2Width/2 -5px);,在 2 和减号之间有空格吗?
(-$itemWidth/2-$item2Width/2-5px);