在IE和边缘旋转的SVG中圆圈



这让我发疯了,我无法弄清楚为什么简单的<circle/>在IE和Edge上的180DEG上旋转。

它看起来像浏览器的错误,但我不能那样让它。

也许您知道可以解决问题的CSS黑客,因为这只是视口中CSS更新的问题。

证明:当您单击圆圈时 - 在IE中,不是边缘 - 它返回其正常旋转(但是JS根本不会影响圆的旋转...(

(

这是演示(在底部(:http://charraire.dev.adelios.fr/notre-organisation/

与Chrome/Firefox和IE/Edge进行比较,您会看到很大的区别。

如果有人可以帮助我,他将成为我的救主!

呵呵...实际上我通过尝试做JSFIDDLE解决了它。

事实是,如果尚未声明(在DOM或CSS中(,则IE和Edge在更新SVG属性时很难更新SVG属性。

我解释自己:

  • 我的DOM中有几个<circle/>元素,它们都有rcxcy属性。
  • 我直接在我的CSS中给他们strokestroke-width
  • 然后,使用JavaScript,我更新了他们的stroke-dasharraystroke-dashoffset

但是,如果您一开始没有指定这些属性,则IE和Edge不喜欢当您使用JavaScript更新这些属性时(上帝知道原因(。

因此,我的解决方案只是在<circle/>元素中添加stroke-dasharray="0"stroke-dashoffset="0"。和魔术!它有效!

或更简单,我刚刚在CSS中添加了stroke-dasharray: 0;stroke-dashoffset: 0;,它也有效。

希望它能帮助别人。

最新更新