此 SVG 包含一个溢出 SVG 元素的矩形:
<svg id='svg' width='10' height='10'>
<rect x='-10' y='-10' width='30' height='30'/>
</svg>
Chrome 28 和 Opera 12 为宽度和高度为 10 的 SVG 元素返回 getBoundingClientRect()
。Firefox 23 报告宽度和高度为 30。哪个是正确的?
相关规范是CSSOM ,如果 SVG 元素没有“关联的 CSS 布局框”,则委托(delegate)给 SVG 规范。我还没有找到“具有关联的 CSS 布局框”的定义,但正确的结果似乎取决于此定义,如 getBBox
在所有浏览器中返回一个 30x30 的矩形。
最佳答案
此 Firefox 错误现已修复,修复已在 Firefox nightlies 中并且应该可以通过 Firefox 33,它将于 2014 年 10 月 14 日发布。参见 bug 530985 了解详情。
关于css - 哪个浏览器返回 SVG 元素的 getBoundingClientRect 的正确结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18153989/