变换后的SVG元素上的getBoundingClientRect()应该返回什么?

Phr*_*ogz 9 javascript svg specifications

今天我测试了当你使用getBoundingClientRect()已旋转的SVG元素时会发生什么.

测试:http://phrogz.net/svg/getBoundingClientRect-on-rotated-elements.html

结果是:

  • Chrome,Safari,Opera和IE似乎计算元素的本地(未转换)边界框,然后返回该边界框的客户端矩形.这可能导致客户端矩形比看起来合适.

  • 另一方面,Firefox会剪切客户端矩形以适应元素本身.

 
                          两种情况的视觉外观;  

根据规格,哪种行为是正确的?

对于它的价值,我更喜欢Firefox的行为,但(缺乏对规格的理解)认为 Firefox的偏差应该被认为是一个bug.

Rob*_*son 3

非火狐浏览器似乎没有给出有用的结果,而且似乎也不符合相关规范。

CSSOM视图模块委托给 SVG 规范,该规范表示它是变换后的紧密边界框,而不是变换后的紧密边界框,因此我坚持认为我正确实现了它。