¿Qué es el formato SVG? Guía técnica completa para 2026
Aprende todo sobre el formato SVG (Scalable Vector Graphics): cómo funciona, cuándo usarlo y por qué es esencial para el diseño web moderno.

Founder of VectoSolve
Self-taught developer, founder and sole developer of VectoSolve since 2024. He builds the conversion engine and the cutting, embroidery and 3D printing exports.
How this article was made: drafted with AI assistance, then edited and fact-checked before publication. About the author
Key Takeaways
- SVG es un formato vectorial basado en XML, estandarizado por el W3C que escala infinitamente sin pérdida de calidad
-
SVG inline ofrece control CSS/JS completo; las etiquetas
<img>permiten el cacheo — elige según tu caso de uso -
La accesibilidad está integrada:
<title>,<desc>,roleyaria-labelhacen los SVG compatibles con lectores de pantalla - La animación abarca cuatro enfoques: SMIL, CSS, JavaScript y la API Web Animations
- Siempre sanitiza SVG de fuentes no confiables — el formato puede incluir scripts
- Optimiza con el optimizador SVG de VectoSolve para eliminar metadatos y comprimir trazados
¿Qué es SVG, realmente?
SVG (Scalable Vector Graphics) no es simplemente otro formato de imagen. Es un vocabulario XML completo que describe gráficos bidimensionales usando coordenadas matemáticas, primitivas geométricas y declaraciones de estilo. Está al mismo nivel que HTML: basado en texto, legible por humanos, integrado en el DOM y estilizable con CSS.
El W3C define SVG como «un lenguaje para describir gráficos bidimensionales en XML.» Como es XML, cada SVG es un documento estructurado que puedes abrir en un editor de texto, manipular con JavaScript y validar contra un esquema. Ningún otro formato de imagen común ofrece esto.
«SVG es el formato de imagen nativo de la web. No solo vive en la web — es la web.» — Chris Coyier
Anatomía SVG: estructura XML y viewBox
Cada SVG comienza con un elemento raíz <svg>. Entender sus atributos es clave para dominar el formato.
<svg xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 200 100"
width="400" height="200">
<rect x="10" y="10" width="180" height="80" rx="8"
fill="#0f172a" stroke="#38bdf8" stroke-width="2"/>
<text x="100" y="58" text-anchor="middle"
fill="#f8fafc" font-size="18">Hola, SVG!</text>
</svg>
xmlnsdeclara el espacio de nombres SVG — requerido en archivos.svgindependientes, opcional al usar inline en HTML5viewBox="0 0 200 100"define el sistema de coordenadas interno: origen en(0,0), 200 unidades de ancho, 100 de altowidth/heightestablecen el tamaño de renderizado; el navegador mapea el viewBox a este viewport
El viewBox desacopla el espacio de coordenadas de las dimensiones en píxeles. Un icono con viewBox="0 0 24 24" se renderiza de forma idéntica a 16px o 512px — el navegador escala el sistema de coordenadas. Por eso SVG escala infinitamente.
SVG usa un sistema de coordenadas con el eje Y apuntando hacia abajo (igual que CSS y Canvas), con el origen en la esquina superior izquierda.
SVG es XML puro. Puedes crear, editar y depurar archivos SVG con cualquier editor de texto — VS Code, Vim, incluso el Bloc de notas. Esto es fundamentalmente diferente de formatos binarios como PNG o JPG. ¿Necesitas una interfaz visual? Usa el editor SVG de VectoSolve para una salida de código en tiempo real.
Historia: W3C, guerras de navegadores y adopción moderna
- 1998: El W3C forma el grupo de trabajo SVG, fusionando las propuestas PGML de Adobe y VML de Microsoft
- 2001: SVG 1.0 se convierte en recomendación W3C
- 2003: SVG 1.1 refina y modulariza la especificación
- 2011: SVG 1.1 Segunda Edición — la versión que la mayoría de navegadores implementan completamente
- 2018: SVG 2.0 alcanza Candidate Recommendation, alineándose con CSS y HTML
La saga de IE
IE 8 y anteriores tenían cero soporte SVG. IE 9 (2011) incorporó renderizado básico pero con carencias: sin animación SMIL, filtros limitados, problemas con viewBox. El verdadero punto de inflexión llegó cuando Microsoft retiró IE en favor de Edge (Chromium) en 2022. Hoy SVG tiene un soporte global de navegadores del 98,5%.
A Full Year of Conversions for $49
Starter Annual: 25 conversions every month, $49 for the whole year. That is about $4.08 a month · Cancel anytime
Get the Annual DealReferencia de elementos SVG
| Elemento | Función | Uso común |
|---|---|---|
<path> | Formas arbitrarias mediante comandos de dibujo (M, L, C, Z) | Iconos, logos, contornos |
<rect> | Rectángulos con esquinas redondeadas opcionales (rx/ry) | Botones, tarjetas, fondos |
<circle> | Círculo por punto central y radio | Puntos, avatares, gráficos circulares |
<polygon> | Forma cerrada a partir de puntos de coordenadas | Estrellas, hexágonos, flechas |
<text> | Texto renderizado, seleccionable y buscable | Etiquetas, marcas de agua |
<g> | Elemento de grupo para transformaciones/estilos colectivos | Control de capas, agrupación |
<defs> | Definiciones reutilizables (no se renderizan directamente) | Degradados, patrones, recortes |
<use> | Clona un elemento definido en otro lugar | Reutilización de iconos, sprites |
<symbol> | Como <g> en <defs>, pero con su propio viewBox | Bibliotecas de iconos, sprite sheets |
SVG inline vs img vs background CSS vs object
| Método | Estilo CSS | Acceso JS | Caché | Accesibilidad | Ideal para |
|---|---|---|---|---|---|
Inline <svg> | Completo | DOM completo | No | Excelente | Iconos, gráficos interactivos |
Etiqueta <img> | Ninguno | Ninguno | Sí | Bueno (alt) | Logos estáticos, ilustraciones |
background CSS | Ninguno | Ninguno | Sí | Pobre | Solo patrones decorativos |
<object> | Solo interno | Vía contentDocument | Sí | Moderado | SVG interactivos legacy |
Elige inline cuando necesites estados hover, animación o interacción JS. Elige <img> para assets estáticos que quieras cachear. Usa background CSS solo para decoración. El enfoque <object> rara vez es la mejor opción en 2026.
Accesibilidad: role, aria-label, title, desc
SVG tiene accesibilidad de primera clase incorporada en la especificación:
<svg role="img" aria-labelledby="logoTitle logoDesc"
viewBox="0 0 120 40">
<title id="logoTitle">Logo de VectoSolve</title>
<desc id="logoDesc">Monograma geométrico V y S en degradado azul</desc>
<path d="M10 35L30 5L50 35Z" fill="url(#grad)"/>
</svg>
role="img"— indica a la tecnología asistiva que es una imagen<title>— el nombre accesible (equivalente aalten<img>)<desc>— descripción más larga para gráficos complejosaria-labelledby— enlaza a los elementos<title>y<desc>aria-hidden="true"— úsalo en SVG puramente decorativos para ocultarlos de los lectores de pantalla
Free SVG Tools for Crafters
Design Checker · Color Separator · Mat Preview · Offset Generator · Text to SVG
Check Your SVG FreeAnimación: SMIL, CSS, JavaScript, API Web Animations
SMIL (animación nativa SVG)
<circle cx="50" cy="50" r="20" fill="#ef4444">
<animate attributeName="r" values="20;35;20" dur="1.5s" repeatCount="indefinite"/>
</circle>
Animaciones CSS
Aplica @keyframes, transition y transform a elementos SVG — el mismo CSS que ya conoces.
Bibliotecas JavaScript
GSAP, Anime.js y Snap.svg proporcionan control por timeline para morphing de trazados complejos y animaciones secuenciadas.
API Web Animations
El enfoque moderno basado en estándares, combinando la potencia de JS con el rendimiento CSS:
element.animate(
[{ transform: 'rotate(0deg)' }, { transform: 'rotate(360deg)' }],
{ duration: 2000, iterations: Infinity }
);
Pro Tip: Usa sprites SVG para sistemas de iconos. Define los iconos como elementos <symbol> en un SVG oculto único, referencia cada uno con <use href="#icon-name"/>. Una sola petición HTTP, control CSS completo, caché del navegador. El reemplazo moderno de las fuentes de iconos — más pequeño, más accesible, más nítido en todos los tamaños.
Warning: SVG puede ejecutar JavaScript. Como SVG soporta elementos <script>, manejadores de eventos (onload, onclick) y referencias externas, los SVG no confiables pueden ser un vector de ataques XSS.
Protégete: sanitiza con DOMPurify antes de insertar inline, prefiere etiquetas <img> para SVG subidos por usuarios (los navegadores bloquean scripts en contexto <img>), establece una CSP estricta, y elimina <script>, <foreignObject> y manejadores de eventos durante el procesamiento de uploads.
Optimización de rendimiento
Los SVG de herramientas de diseño tienen exceso de peso — metadatos del editor, grupos redundantes, precisión decimal excesiva.
| Paso de optimización | Ahorro típico |
|---|---|
| Eliminar metadatos | 10-25% |
| Reducir precisión decimal | 15-30% |
| Fusionar grupos, limpiar IDs | 5-15% |
| GZIP/Brotli (lado servidor) | 60-75% |
| Combinado (pre-compresión) | 40-60% |
Técnicas clave: eliminar metadatos del editor, reducir la precisión de coordenadas a 1-2 decimales, aplanar elementos <g> anidados, usar viewBox en lugar de dimensiones fijas, habilitar GZIP/Brotli (SVG se comprime excepcionalmente bien), y automatizar con el optimizador de VectoSolve.
Empieza con SVG
VectoSolve ofrece herramientas potenciadas por IA para el flujo de trabajo SVG completo:
- Convertir raster a vector — sube PNG/JPG, obtén SVG limpio y optimizado
- Editar visualmente — usa el editor SVG para ajustar trazados y colores
- Optimizar — pasa tus archivos por el optimizador para eliminar el exceso
SVG es el lenguaje gráfico nativo de la web — abierto, estandarizado, accesible, animable y eficiente. En 2026, dominar SVG no es opcional. Es fundamental.
| Funcionalidad SVG | Soporte de navegador | Caso de uso |
|---|---|---|
| SVG inline con control CSS/JS | Todos los navegadores modernos (98%+) | Iconos interactivos, animaciones, temas |
| Integración con etiqueta <img> | Universal | Logos estáticos, ilustraciones con caché |
| Animación SMIL | Todos excepto IE (95%+) | Animación SVG declarativa sin JavaScript |
| Filtros SVG (feGaussianBlur, etc.) | Todos los navegadores modernos (97%+) | Desenfoque, sombras, manipulación de color |
| Accesibilidad (title, desc, aria) | Lectores de pantalla + todos los navegadores | Diseño inclusivo para usuarios con discapacidad visual |
A Full Year of Conversions for $49
Starter Annual: 25 conversions every month, $49 for the whole year. That is about $4.08 a month · Cancel anytime
Get the Annual DealFuentes y lecturas adicionales
- MDN Web Docs: SVG — Referencia completa de cada elemento, atributo y API SVG
- Especificación W3C SVG 2 — El estándar oficial W3C que define la sintaxis, renderizado e interactividad SVG
- CSS-Tricks: Using SVG — Guía práctica para integrar, estilizar y optimizar SVG en la web
- web.dev Performance — Recurso de Google sobre optimización de imágenes y Core Web Vitals
- Smashing Magazine — Artículos en profundidad sobre accesibilidad SVG, animación y buenas prácticas