1. 属性
- attributeName: 定义发生变化的属性名
- attributeType: 当 attributeType=”XML” 时,attributeName 被认为是 XML 的属性;当 attributeType=”CSS” 时,attributeName 被认为是 css 的属性;不指定 attributeType 时,默认为 “auto”, 会将 attributeName 作为 css 的属性,如果无效,再将 attributeName 作为 XML 的属性
- from、to、by:from 和 to 分别定义发生变化的属性的初始值和终止值。from 可缺省,表示初始值即为 animate 父元素相应的属性值。可用 by 替换 to,表示变化偏移量,可以理解为 to = from + by
- begin dur end:begin 定义动画开始时间,dur 定义动画所需时间,end 定义动画终止时间。时间单位 h:小时;min:分钟;s:秒;ms:毫秒。默认时间单位为 s。
- fill:当 fill=”freeze” 时,动画终止时,发生变化的元素属性值停留在动画终止时的状态;当 fill=”remove” 时,动画终止时,发生变化的元素属性值回复到动画终起始时的状态。默认属性值为 remove。
- repeatCount: indefinite 无限循环
2. animateTransform
- 实现 transform 属性改变的动画,animateTransform 来代替 animate 元素
- type 属性指定需要改变的属性,如 translate scale rotate skewX skewY 等
1 | <svg viewBox='0 0 200 200' width='600'> |
3. animateMotion
- animateMotion 可以让父元素沿着指定的路径运动
- 路径使用和
<path>
相同的方式进行定义 - rotate 可以设置是否根据路径的正切角度来旋转
1 | <svg viewBox='0 0 400 400' width='600' > |