【问题标题】:Calc function doesn't work for exponentiation [duplicate]Calc 函数不适用于求幂 [重复]
【发布时间】:2019-12-18 10:57:09
【问题描述】:

问题很短:

由于某种原因,calc() 函数在我的情况下不起作用。

<style>
body {
    padding-left: calc(1% * 1%);
}
</style>

Chrome 说它不是有效值。为什么?

(有没有其他方法可以使用exponentiation,它基于元素宽度,与calc()?)

【问题讨论】:

  • 不,没有办法使用 calc() 进行幂运算

标签: css


【解决方案1】:

*

在乘法中。至少有一个参数必须是数字

https://developer.mozilla.org/en-US/docs/Web/CSS/calc

两者都是百分比而不是数字。您可以添加它们。

.box {
    padding-left: calc(15% + 10%);
}

【讨论】:

    【解决方案2】:

    in the MDN docs 所述,在calc() 中使用乘法时,至少其中一个值必须是number:整数或浮点数,但无单位。

    这意味着这些是有效值:

    calc(1% * 2);
    calc(3 * 10px);
    

    这些都不是:

    calc(1% * 1%);
    calc(10px * 10px);
    

    【讨论】:

    • 看来我应该接受这个答案。但是还有其他方法可以将exponentiationcalc 一起使用吗?
    • 根据 MDN,目前只有 4 个操作员 (+ - * /),因此您需要根据您要完成的具体事情采用不同的方法。
    • @johnc.j。最好为此提出一个单独的问题,可能带有指向该问题的反向链接。但是,除非您引入一些额外的 DOM,否则我不知道有什么办法。
    猜你喜欢
    • 2019-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-08
    • 2013-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多