SVG径向渐变- <radialGradient>
所述<radialGradient>元素被用来定义一个径向渐变。
在<radialGradient>元素必须嵌套在一个<defs>标记。 在<defs>标签是短期的定义和含有特殊元素的定义(such as gradients) 。
例1
定义一个径向渐变从白色到蓝色椭圆:
下面是SVG代码:
例
<svg height="150" width="500">
<defs>
<radialGradient id="grad1" cx="50%" cy="50%" r="50%"
fx="50%" fy="50%">
<stop offset="0%" style="stop-color:rgb(255,255,255);
stop-opacity:0" />
<stop offset="100%" style="stop-color:rgb(0,0,255);stop-opacity:1" />
</radialGradient>
</defs>
<ellipse cx="200" cy="70" rx="85" ry="55"
fill="url(#grad1)" />
</svg>
试一试» Code explanation:
- 该id的属性<radialGradient>标签定义一个唯一的名称为渐变
- 在CX,CY和R属性定义了最外面的圆和fx和fy定义最内侧圆
- 颜色范围的梯度可以由两种或更多的颜色。 每种颜色都与一个指定<stop>标记。 的offset属性用来定义渐变颜色的开始和结束
- 的fill属性的椭圆元件链接到梯度
例2
定义另一个椭圆形径向渐变从白色到蓝色:
下面是SVG代码:
例
<svg height="150" width="500">
<defs>
<radialGradient id="grad2" cx="20%" cy="30%" r="30%" fx="50%" fy="50%">
<stop offset="0%" style="stop-color:rgb(255,255,255);
stop-opacity:0" />
<stop offset="100%" style="stop-color:rgb(0,0,255);stop-opacity:1" />
</radialGradient>
</defs>
<ellipse cx="200" cy="70" rx="85" ry="55" fill="url(#grad2)" />
</svg>
试一试»