php中文网

Less 中混合单位计算为何会变成百分比?

php中文网

less中混合单位计算奇葩解析

在less中,出现了这样一个问题,使用calc()进行混合单位计算时,计算结果竟然变成了百分比。具体表现为:calc((100% - 40px) / 4)运行之后的值变成了calc(15%)。

造成这个问题的原因是:

less在解析calc()内部运算时,忽略了单位,全部按照百分比进行计算。因此,calc((100% - 40px) / 4)被解析为calc(60%/4) = calc(15%)。

要解决这个问题,有两种方法:

  1. 直接使用:calc((~"100% - 40px") / 4)
  2. 定义less变量@myHeight: 30px,然后使用calc((~"100% - @{myHeight}") / 4)

以上就是Less 中混合单位计算为何会变成百分比?的详细内容,更多请关注php中文网其它相关文章!