Los últimos tutoriales de desarrollo web
 

SVG Gradientes - Lineal


Los degradados SVG

Un degradado es una transición suave de un color a otro. Además, varias transiciones de color se pueden aplicar al mismo elemento.

Hay dos tipos principales de gradientes en SVG:

  • Lineal
  • Radial

SVG Gradiente Lineal - <linearGradient>

La <linearGradient> elemento se utiliza para definir un gradiente lineal.

La <linearGradient> elemento debe estar anidada dentro de un <defs> etiqueta. La <defs> etiqueta es la abreviatura de las definiciones y contiene la definición de los elementos especiales (such as gradients) .

gradientes lineales se pueden definir como gradientes horizontales, verticales o angulares:

  • gradientes horizontales se crean cuando Y1 e Y2 son iguales y X1 y X2 son diferentes
  • gradientes verticales se crean cuando X1 y X2 son iguales y Y1 e Y2 son diferentes
  • gradientes angulares se crean cuando X1 y X2 son diferentes y Y1 e Y2 son diferentes

Ejemplo 1

Definir una elipse con un gradiente lineal horizontal de amarillo a rojo:

style="stop-color:rgb(255,255,0);stop-opacity:1" /> style="stop-color:rgb(255,0,0);stop-opacity:1" /> llenar = "url (# grad1)" /> Lo sentimos, su navegador no soporta SVG en línea.

Aquí está el código SVG:

Ejemplo

<svg height="150" width="400">
  <defs>
    <linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="0%">
      <stop offset="0%" style="stop-color:rgb(255,255,0);stop-opacity:1" />
      <stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
    </linearGradient>
  </defs>
  <ellipse cx="200" cy="70" rx="85" ry="55" fill="url(#grad1)" />
</svg>
Inténtalo tú mismo "

Code explanation:

  • La id atributo de la <linearGradient> etiqueta define un nombre único para el gradiente
  • El x1, x2, y1, y2 atributos de la <linearGradient> etiqueta de definir la posición inicial y final del gradiente
  • La gama de colores para un gradiente puede estar compuesto de dos o más colores. Cada color se especifica con un <stop> etiqueta. El offset atributo se utiliza para definir dónde comienza y termina el color del gradiente
  • El fill atributo vincula el elemento elipse con el gradiente

Ejemplo 2

Definir una elipse con un gradiente lineal vertical del amarillo al rojo:

style="stop-color:rgb(255,0,0);stop-opacity:1" /> style="stop-color:rgb(255,255,0);stop-opacity:1" /> llenar = "url (# grad2)" /> Lo sentimos, su navegador no soporta SVG en línea.

Aquí está el código SVG:

Ejemplo

<svg height="150" width="400">
  <defs>
    <linearGradient id="grad2" x1="0%" y1="0%" x2="0%" y2="100%">
      <stop offset="0%" style="stop-color:rgb(255,255,0);stop-opacity:1" />
      <stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
    </linearGradient>
  </defs>
  <ellipse cx="200" cy="70" rx="85" ry="55" fill="url(#grad2)" />
</svg>
Inténtalo tú mismo "

Ejemplo 3

Definir una elipse con un gradiente lineal horizontal de amarillo a rojo, y añadir un texto dentro de la elipse:

style="stop-color:rgb(255,255,0);stop-opacity:1" /> style="stop-color:rgb(255,0,0);stop-opacity:1" /> llenar = "url (# grad3)" /> SVG Lo sentimos, su navegador no soporta SVG en línea.

Aquí está el código SVG:

Ejemplo

<svg height="150" width="400">
  <defs>
    <linearGradient id="grad3" x1="0%" y1="0%" x2="100%" y2="0%">
      <stop offset="0%" style="stop-color:rgb(255,255,0);stop-opacity:1" />
      <stop offset="100%" style="stop-color:rgb(255,0,0);stop-opacity:1" />
    </linearGradient>
  </defs>
  <ellipse cx="200" cy="70" rx="85" ry="55" fill="url(#grad3)" />
  <text fill="#ffffff" font-size="45" font-family="Verdana" x="150" y="86">
  SVG</text>
</svg>
Inténtalo tú mismo "

Code explanation:

  • La <text> elemento se utiliza para añadir un texto