Gradiente radial do SVG

Gradiente Radial SVG - <radialGradient>

<radialGradient> O elemento é usado para definir gradiente radial (radial gradient).

<radialGradient> O elemento deve estar aninhado dentro <defs> dentro do marcador.<defs> O elemento é uma abreviação de definição (definitions), que contém definições de elementos especiais (como filtros).

Exemplo 1

Defina um elipse com um gradiente radial de branco para azul:

Este é o código 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>

Experimente você mesmo

Explicação do código:

  • O atributo id do tag <radialGradient> define o nome único do gradiente
  • Os atributos cx, cy e r definem a circunferência mais externa, enquanto fx e fy definem a circunferência mais interna
  • O intervalo de cores do gradiente pode ser composto por duas ou mais cores. Cada cor é especificada por um marcador <stop>
  • A propriedade offset define a posição de início e fim da cor do gradiente
  • A propriedade fill liga o elemento elipse ao gradiente

Exemplo 2

Defina outro elipse com uma gradiente radial de branco para azul:

Este é o código 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>

Experimente você mesmo