【发布时间】:2018-03-09 06:32:46
【问题描述】:
我正在尝试为 svg 中的路径设置动画。 路径是一条波浪线,看起来像波浪。我想要做的是让这条路径在无限循环上水平平移,使其看起来好像水在移动。
你可以看到轮廓实现了类似的效果,只是垂直方向,这不在 SVG 中:https://theoutline.com/
这是我目前拥有的带有 svg wave/squiggle 的 JsFiddle。
<g class="wave-container">
<path class="wave" d="M1,1c1.6,0,1.6,1.6,3.3,1.6S5.9,1,7.6,1c1.6,0,1.6,1.6,3.3,1.6S12.5,1,14.2,1s1.6,1.6,3.3,1.6
c1.6,0,1.6-1.6,3.3-1.6"/>
</g>
https://jsfiddle.net/bje5rxzs/
我试图能够在它的组/容器中水平地动画这个波。我知道 SVG 不支持溢出:隐藏;内,那么这将如何实现? 面膜有用吗?如果需要,我愿意使用 snap.svg。我将在这个 svg 中移动其他元素,所以曲线需要在同一个 svg 中。
非常感谢任何帮助!谢谢你:)
【问题讨论】:
-
SVG 确实支持 overflow:hidden 所以你知道是错的。
-
@RobertLongson 嘿伙计,我说的是“在 SVG 内”。如果您阅读规范,您会发现我所知道的并没有错。 “overflow 属性仅适用于建立新视口的元素、
元素和 元素。对于所有其他元素,该属性无效。”通过 MDN:developer.mozilla.org/en-US/docs/Web/SVG/Attribute/overflow 感谢您的帮助。 -
标签: javascript css svg css-animations snap.svg