检查

时间:2019-03-26 23:30:42

标签: javascript firefox svg position getboundingclientrect

我正在尝试在svg组元素旁边呈现div。我通过获取组元素的位置 JS函数“ element.getBoundingClientRect()。left”和“ element.getBoundingClientRect()。top”,这样我就可以正确计算div的位置了。

但是,在Firefox中,“左”和“上”值与Chrome和Safari(在所有浏览器中均使用最新版本)完全不同。 “ group”元素似乎在SVG中的正确位置(它们通过“ translate”进行转换),但是在检查group元素时,我可以看到该位置在Firefox的左上角。在Chrome中,位置是元素在视觉上的位置。因此,“ getBoundingClientRect()”函数给出的结果截然不同。

这两个屏幕截图说明了差异,比我的文字要好。

Chrome: Chrome

Firefo Firefox

有什么方法可以将Firefox中的实际位置移动到视觉上可见的位置?像完成转换后一样?

我刚刚尝试添加“ -moz-transform”,这没有任何区别。我还尝试过通过CSS而不是HTML直接设置“转换”。除此之外,我尝试将SVG元素的位置设置为“相对”,以防万一。我也在Google和Stackoverflow上进行了搜索,但找不到与此相关的任何内容。

任何帮助将不胜感激。谢谢

0 个答案:

没有答案