【发布时间】:2015-10-30 03:42:24
【问题描述】:
我是第一次使用动画 SVG / Snap.svg,所以请原谅我缺乏这方面的知识。
我制作了一系列 3 个动画 SVG “帧” (400x300px),每个都嵌套在一个更大的 SVG (1200x300px) 中以包含它们。具有 clip 样式属性的 div 元素会在其他两个“框架”尚未准备好显示时隐藏它们。
使用 Snap.svg,每一帧都应该在一定时间后使用translate“滑入”视图,并且每一帧内都有一些动画元素。
长话短说:动画在 Firefox 中看起来很完美,但在 Chrome/Webkit 中看起来很糟糕。在 Chrome 中,看起来每个框架只是彼此堆叠,而不是并排。
此外,其中两个元素(牛圈joules 和图形圈graph)在左上角呈现,而不是使用它们的translate 属性将它们定位在右中区域.
您可以在 Plunker 中看到动画。请在两种浏览器中试用一下,看看我的意思。
Firefox GIF 屏幕截图:
Chrome GIF 屏幕截图:
【问题讨论】:
-
我会用更少的例子把它分解成更小的代码。第一个猜测是您正在对 svg 元素应用转换。对 svg 标签的转换并不是真正支持的,所以将 svg 元素附加到一个组中,然后转换组。
-
谢谢@Ian!将
<svg>标签换成<g>(组)标签解决了这个问题。有趣的是,Firefox 允许您转换<svg>元素,但 Webkit 不允许。
标签: javascript html css svg snap.svg