菜单
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP 如何 W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY 数据科学
     ❯   

SVG 径向渐变


SVG 径向渐变 - <radialGradient>

<radialGradient> 元素用于定义径向渐变(从一种颜色到另一种颜色、从一个方向到另一个方向的圆形过渡)。

渐变定义放在 <defs><svg> 元素中。<defs> 元素是“定义”的缩写,包含特殊元素(如渐变)的定义。

每个渐变都必须有一个 id 属性来标识渐变。然后图形/图像指向要使用的渐变。


径向渐变 1

一个带有从红色到蓝色径向渐变的椭圆

Sorry, your browser does not support inline SVG.

这是 SVG 代码

示例

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <radialGradient id="grad1" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
      <stop offset="0%" stop-color="red" />
      <stop offset="100%" stop-color="blue" />
    </radialGradient>
  </defs>
  <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad1)" />
</svg>
自己动手试一试 »

代码解释

  • <radialGradient> 元素的 id 属性定义了渐变的唯一名称
  • cxcy 属性定义了径向渐变结束圆的 x 和 y 位置
  • fxfy 属性定义了径向渐变起始圆的 x 和 y 位置
  • r 属性定义了径向渐变结束圆的半径
  • 渐变的颜色由两个或多个 <stop> 元素定义
  • <stop> 中的 offset 属性定义了渐变停止点的位置
  • <stop> 中的 stop-color 属性定义了渐变停止点的颜色
  • <ellipse> 元素的 fill 属性将该元素指向“grad1”渐变


径向渐变 2

一个带有从红色到绿色再到蓝色径向渐变的椭圆

Sorry, your browser does not support inline SVG.

这是 SVG 代码

示例

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <radialGradient id="grad2" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
      <stop offset="0%" stop-color="red" />
      <stop offset="50%" stop-color="green" />
      <stop offset="100%" stop-color="blue" />
    </radialGradient>
  </defs>
  <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad2)" />
</svg>
自己动手试一试 »

径向渐变 3

一个带有从红色到蓝色径向渐变的椭圆(这里我们将结束圆的 x 和 y 位置设置为 25%)

Sorry, your browser does not support inline SVG.

这是 SVG 代码

示例

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <radialGradient id="grad3" cx="25%" cy="25%">
      <stop offset="0%" stop-color="red" />
      <stop offset="100%" stop-color="blue" />
    </radialGradient>
  </defs>
  <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad3)" />
</svg>
自己动手试一试 »

径向渐变 4 - spreadMethod="reflect"

一个带有从红色到蓝色径向渐变和 spreadMethod="reflect" 的椭圆

Sorry, your browser does not support inline SVG.

这是 SVG 代码

示例

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <radialGradient id="grad4" cx="25%" cy="25%" spreadMethod="reflect">
      <stop offset="0%" stop-color="red" />
      <stop offset="100%" stop-color="blue" />
    </radialGradient>
  </defs>
  <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad4)" />
</svg>
自己动手试一试 »

径向渐变 5 - spreadMethod="repeat"

一个带有从红色到蓝色径向渐变和 spreadMethod="repeat" 的椭圆

Sorry, your browser does not support inline SVG.

这是 SVG 代码

示例

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <radialGradient id="grad5" cx="25%" cy="25%" spreadMethod="repeat">
      <stop offset="0%" stop-color="red" />
      <stop offset="100%" stop-color="blue" />
    </radialGradient>
  </defs>
  <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad5)" />
</svg>
自己动手试一试 »

径向渐变 6

定义另一个带有从红色到蓝色径向渐变的椭圆

Sorry, your browser does not support inline SVG.

这是 SVG 代码

示例

<svg height="150" width="400" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <radialGradient id="grad6" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
      <stop offset="0%" stop-color="red" stop-opacity="0" />
      <stop offset="100%" stop-color="blue" stop-opacity="1" />
    </radialGradient>
  </defs>
  <ellipse cx="100" cy="70" rx="85" ry="55" fill="url(#grad6)" />
</svg>
自己动手试一试 »

代码解释

  • <stop> 中的 stop-opacity 属性定义了渐变停止点颜色的不透明度

SVG <radialGradient> 属性

Attribute 描述
id 必需。定义 <radialGradient> 元素的唯一 id
cx 径向渐变结束圆的 x 位置。默认为 50%
cy 径向渐变结束圆的 y 位置。默认为 50%
fr 径向渐变起始圆的半径。默认为 0%
fx 径向渐变起始圆的 x 位置。默认为 50%
fy 径向渐变起始圆的 y 位置。默认为 50%
r 径向渐变结束圆的半径。默认为 50%
spreadMethod 定义渐变的扩散方法。可能的值:“pad”、“reflect”、“repeat”。默认为“pad”
href 定义对另一个 <radialGradient> 元素的引用,该元素将用作模板
gradientUnits 定义 cx、cy、r、fx、fy、fr 的坐标系统。可能的值:“userSpaceOnUse”和“objectBoundingBox”。默认为“objectBoundingBox”
gradientTransform 定义对渐变坐标系统的额外变换

×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持