svg图怎么做一个水一上一下的动画
时间: 2023-11-05 15:58:06 浏览: 38
要做一个水上下的动画,可以使用SVG的动画属性,比如使用<animateTransform>元素。首先,在SVG中创建一个水的形状,可以使用<path>元素或<polygon>元素等,然后设置水的位置和大小。接着,使用<animateTransform>元素,设置属性值为“translate”和“scale”,分别控制水在垂直方向上的移动和大小变化。最后,设置<animateTransform>的“dur”属性和“repeatCount”属性,分别表示动画持续时间和重复次数。以下是一个示例代码:
```
<svg width="200" height="200">
<polygon id="water" points="0,50 50,20 100,50 150,20 200,50 200,100 0,100" fill="#00bfff" />
<animateTransform xlink:href="#water" attributeName="transform"
attributeType="XML" type="translate"
values="0 0; 0 20; 0 0;" begin="0s" dur="1s" repeatCount="indefinite" />
<animateTransform xlink:href="#water" attributeName="transform"
attributeType="XML" type="scale"
values="1 1; 1 0.9; 1 1;" begin="0s" dur="1s" repeatCount="indefinite" />
</svg>
```
在这个示例中,使用<polygon>元素创建了一个水的形状,并设置了填充颜色为蓝色。接着,使用两个<animateTransform>元素,分别对应水的移动和大小变化。第一个<animateTransform>元素将水向下移动20个像素,然后返回原位置,反复循环。第二个<animateTransform>元素将水的大小从1变为0.9,然后返回原大小,同样反复循环。整个动画的效果就是水上下晃动。