为什么getComputedStyle.width / Height在chrome和edge中为display:inline提供不同的值?

时间:2018-12-27 17:34:05

标签: javascript css google-chrome microsoft-edge

我有一个自定义元素,默认值设置为“ display”(即“ inline”),当我在执行getComputedStyle.Height / Width(在chrome中)时,它以像素为单位返回值,但在Edge / safari中,它为“ auto” '。这是边缘漏洞吗?计算值不应该始终以像素为单位吗?

1 个答案:

答案 0 :(得分:1)

我与高级MSFT开发人员讨论了这个问题。他们告诉我,当您使用' display:inline; '时,MS Edge浏览器引擎将忽略您专门为元素设置的样式值,并且会分配默认值,例如 auto 。因此,由于这个原因,MS Edge返回自动值而不是像素数。要获取像素数,您可以删除“ display:inline;”。

这是设计使然,不能视为错误。

感谢您的理解。