这让我发疯了,我无法弄清楚为什么简单的<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/>
元素,它们都有r
,cx
和cy
属性。 - 我直接在我的CSS中给他们
stroke
和stroke-width
。 - 然后,使用JavaScript,我更新了他们的
stroke-dasharray
和stroke-dashoffset
。
但是,如果您一开始没有指定这些属性,则IE和Edge不喜欢当您使用JavaScript更新这些属性时(上帝知道原因(。
因此,我的解决方案只是在<circle/>
元素中添加stroke-dasharray="0"
和stroke-dashoffset="0"
。和魔术!它有效!
或更简单,我刚刚在CSS中添加了stroke-dasharray: 0;
和stroke-dashoffset: 0;
,它也有效。
希望它能帮助别人。