Css 宽度:calc()在Firefox中不起作用

Css 宽度:calc()在Firefox中不起作用,css,firefox,width,calc,Css,Firefox,Width,Calc,我对一个项目具有以下CSS属性: width: calc(100%- 40px); width: -moz-calc(100% - 40px); 但是Firefox说它们都是无效的属性值。这是Firefox的一个bug,还是Firefox中有一种新的宽度计算方法?-moz-calcFirefox 53的CSS功能。只需使用calc并确保参数之间有空格: 正确: width: calc(100% - 40px); 不正确: width: calc(100%- 40px); -moz-calc

我对一个项目具有以下CSS属性:

width: calc(100%- 40px);
width: -moz-calc(100% - 40px);

但是Firefox说它们都是无效的属性值。这是Firefox的一个bug,还是Firefox中有一种新的宽度计算方法?

-moz-calc
Firefox 53的CSS功能。只需使用
calc
并确保参数之间有空格:

正确:

width: calc(100% - 40px);
不正确:

width: calc(100%- 40px);

-moz-calc
CSS功能与Firefox 53配合使用。只需使用
calc
并确保参数之间有空格:

正确:

width: calc(100% - 40px);
不正确:

width: calc(100%- 40px);

Firefox浏览器支持
calc
功能,如本页底部的浏览器兼容性中所示,只有该页上注明的空格和:

此外,+和-运算符的两侧都需要空白。(可以在*和/运算符周围没有空格的情况下使用它们。)

您的示例将在
-
符号前面添加一个额外的空格,如下所示:

width: calc(100% - 40px);

至于
-moz-calc()
功能,根据Firefox官方开发渠道,他们从2017年1月起就开始支持该功能,并建议使用标准的
calc()
功能。

Firefox浏览器支持
calc
功能,如本页底部的浏览器兼容性所示,只有该页上注明的关于空格的特定注释以及:

此外,+和-运算符的两侧都需要空白。(可以在*和/运算符周围没有空格的情况下使用它们。)

您的示例将在
-
符号前面添加一个额外的空格,如下所示:

width: calc(100% - 40px);

至于
-moz-calc()
函数,根据Firefox官方开发渠道,他们从2017年1月起就开始支持该函数,并建议使用标准的
calc()
函数。

参见:“注意:+和-运算符必须用空格包围。例如,calc(50%-8px)将被解析为一个百分比,后跟一个负长度。这是一个无效的表达式,而calc(50%-8px)是一个百分比,后跟一个减法运算符和一个长度。同样,calc(8px+-50%)被视为一个长度,后跟一个加法运算符和一个负百分比。“您需要在
calc(100%-40px)中使用空格。例如:
calc(100%-40px)请参阅:“注意:+和-运算符必须用空格包围。例如,calc(50%-8px)将被解析为一个百分比,后跟一个负长度,这是一个无效的表达式,而calc(50%-8px)是一个百分比,后跟一个减法运算符和一个长度。同样,calc(8px+-50%)也将被解析为一个百分比被视为一个长度,后跟一个加法运算符和一个负百分比。例如:
calc(100%-40px)好问题!我的答案包含一个指向浏览器兼容性图表的链接,以及W3官方文档的摘录。在提交之前我没有刷新我的浏览器,因此我不知道您发表了评论,并且在我键入答案时有人提供了答案,因此我的答案对您来说是多余的_(ツ)_/“”。谢谢@j08691指出这一点!问得好!我的答案包含浏览器兼容性图表的链接,以及W3官方文档的摘录。我在提交之前没有刷新我的浏览器,因此不知道您发表了评论,并且在我键入答案时有人提供了答案,因此我的答案是e速度较慢,链接较多,对您来说似乎是多余的”_(ツ)_/“”.谢谢@j08691指出这一点!这个宽度如何:calc(100%/5);?正确吗?当右手是数字时,除法运算符在calc函数中工作。为了更精确,请删除括号前后的空格@narenverma这个宽度如何:calc(100%/5)?正确吗?当右手是一个数字时,除法运算符在计算函数中工作。为了更精确,请删除括号@NarenVerma前后的空格