标签:style blog http color io os 使用 ar strong
SVG支持动画。可以通过以下几种方法获得动画效果:
一、SVG中的动画元素
SVG中的动画元素有五个,它们都可以随着时间的变化而改变SVG元素的属性或样式值,如下所示:
attributeName="<attributeName>":批明所作用的SVG元素中哪个属性或样式需要产生动画效果。
attrbuteType="<XML|CSS|auto>":指明产生动画效果的属性或样式值是哪个命名空间定义的。“XML”表示“attributeName”的值是默认XML命名空间里定义的XML属性名;“CSS”表示“attributeName”的值是默认CSS属性的名称;“auto”是默认值,解析器解析时先在CSS属性列表中查找是否有匹配“attributeName”的属性名,然后再在XML的命名空间里找
1.与时间控制相关的常用属性
begin="<clock-time-value>|wallclock-sync-value|indefinite|eventName":定义动画的开始时刻。
2.与过程控制相关的常用属性
from="<value>":定义该动画元素所作用的属性值在开始变化时的值
to="<value>":定义该动画元素所作用的属性值在结束变化时的值
by="<value>":定义该动画元素所作用的属性值每次变化的步长值
calcMode="discrete|linear|paced|spline":定义动画关键点直接过渡的插值计算方式
例子1:
<rect x="50" y="50" width="100" height="50"> <animate attributeType="XML" attributeName="x" from="50" to="300" dur="3s" begin="3s" restart="always" repeatCount="3" > </animate> </rect>
例子2:
<text x="0" y="0" font-size="37" visibility=‘hidden" stroke="black" stroke-width="2" > <animateMotion path="M0,0 L50,50 L100,150" begin="1s" dur="5s" fill="freeze" rotate="auto"/> </text>
例子3:
<svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg"> <g transform="translate(100,100)"> <text id="TextElement" x="0" y="0" style="font-family:Verdana;font-size:24; visibility:hidden"> It‘s SVG! <set attributeName="visibility" attributeType="CSS" to="visible" begin="1s" dur="5s" fill="freeze" /> <animateMotion path="M 50 50 L 300 300" begin="1s" dur="5s" fill="freeze" /> <animateTransform attributeName="transform" attributeType="XML" type="rotate" from="0" to="360" begin="1s" dur="15s" fill="freeze" repeatCount=‘indefinite‘/> <animateTransform attributeName="transform" attributeType="XML" type="scale" from="1" to="3" additive="sum" begin="1s" dur="5s" fill="freeze" /> </text> </g> </svg>
二、
参考:
HTML5的 2D SVG和SVG DOM的学习笔记(2)---SVG动画
标签:style blog http color io os 使用 ar strong
原文地址:http://www.cnblogs.com/JoannaQ/p/3989621.html