Less中calc混合运算的单位解析问题:为什么 `calc((100% - 40px) / 4)` 会计算成 `calc(15%)`?
less中calc混合运算的单位解析问题
在Less中,使用带有单位的混合运算类型时,需要注意单位解析问题。
例如,下述Less代码:
calc((100% - 40px) / 4)
在正常情况下,应该计算为 calc(15%),但是,在某些情况下却计算成了 calc(15%)。
这是因为less在解析此表达式时忽略了单位,将所有单位混合运算都作为百分比处理。因此,表达式被解析为 calc(60%/4)=calc(15%)。
要解决此问题,有两种方法:
- 使用 ~ 操作符强制保留单位:
calc((~"100% - 40px") / 4)
- 将带单位的值存储在变量中,然后在表达式中使用:
@myHeight: 40px; calc((~"100% - @{myHeight}") / 4)
以上就是Less中calc混合运算的单位解析问题:为什么 `calc((100% - 40px) / 4)` 会计算成 `calc(15%)`?的详细内容,更多请关注其它相关文章!