我目前正在学习如何使用CSS为svg对象制作动画。
我现在知道如何用以下方式设置路径动画:
@keyframes stroke_fill {
0% {
fill: white;
}
50% {
fill: white;
stroke-dashoffset: 0;
}
100% {
fill: black;
stroke-dashoffset: 0;
}
}
.animation{
animation: stroke_fill 4s ease forwards;
stroke-dasharray: 324.774;
stroke-dashoffset: 324.774;
}
组合在一起的路径显示在<g>
标记中
是否可以为<g>
代码设置动画?
如果所有的孩子都有相同的动画,那么同时也会很好 现在我必须给每一个路径一个类,如果我运行一个复杂的svg文件需要花费很多时间。
按组进行操作可以节省大量时间。
这是一个小提琴:https://jsfiddle.net/vvvwcrdy/
答案 0 :(得分:3)
是的,这是可能的。你试过吗?
演示:
@keyframes stroke_fill {
0% {
fill: white;
}
50% {
fill: white;
stroke-dashoffset: 0;
}
100% {
fill: black;
stroke-dashoffset: 0;
}
}
.animation{
animation: stroke_fill 4s ease forwards;
stroke-dasharray: 324.774;
stroke-dashoffset: 324.774;
stroke: red;
stroke-width: 10;
}
<svg>
<g class="animation">
<rect x="20" y="20" width="120" height="120" />
<rect x="160" y="20" width="120" height="120" />
</g>
</svg>