Bordes avanzados con border-image

Domina border-image: modelo de 9 cortes, control de slice/width/repeat, fallbacks y patrones reutilizables para componentes reales.

border-image pinta el marco a partir de una fuente (imagen, SVG o gradiente) recortada en 9 zonas.

Si no defines un borde físico (border), no existe área donde renderizar el borde gráfico.

El ajuste fino depende de cuatro claves: source, slice, width y repeat.

Con fallbacks puedes mantener legibilidad y evitar marcos rotos en contextos no ideales.

  • El navegador divide la fuente en una cuadrícula 3x3: cuatro esquinas, cuatro lados y un centro. Normalmente solo se usa el perímetro; el centro puede incluirse con fill.
  • Primero crea el área con border, luego aplica border-image. Si olvidas ese paso, parecerá que la propiedad no funciona.
  • slice define dónde se corta la fuente: números (px de la imagen) o porcentajes.
  • fill conserva también la zona central, útil para marcos texturizados tipo sticker.
  • Un slice mal calibrado deforma esquinas; empieza con 1 en gradientes y ajusta más en imágenes reales.

Modelo mental: 9 cortes y área de borde

El navegador divide la fuente en una cuadrícula 3x3: cuatro esquinas, cuatro lados y un centro. Normalmente solo se usa el perímetro; el centro puede incluirse con fill.

Primero crea el área con border, luego aplica border-image. Si olvidas ese paso, parecerá que la propiedad no funciona.

slice, porcentajes y fill

  • slice define dónde se corta la fuente: números (px de la imagen) o porcentajes.
  • fill conserva también la zona central, útil para marcos texturizados tipo sticker.
  • Un slice mal calibrado deforma esquinas; empieza con 1 en gradientes y ajusta más en imágenes reales.

width, repeat y estabilidad visual

border-image-width controla el grosor final del borde gráfico y no siempre coincide con border-width. Mantén una relación coherente para no romper proporciones.

repeat suele ser la opción más segura para patrones; round evita recortes raros cuando el tamaño no encaja exacto.

Fallback progresivo

  • Define un border-color útil antes de border-image para mantener contraste.
  • Usa @supports para activar el borde avanzado solo cuando compense.
  • Evita depender del marco para comunicar estado crítico (accesibilidad).
CSS
27

Bordes avanzados con border-image

Domina border-image: modelo de 9 cortes, control de slice/width/repeat, fallbacks y patrones reutilizables para componentes reales.

Código del tema: display: grid; gap: 1rem;

📘 Teoría

Modelo mental: 9 cortes y área de borde

1

El navegador divide la fuente en una cuadrícula 3x3: cuatro esquinas, cuatro lados y un centro. Normalmente solo se usa el perímetro; el centro puede incluirse con fill.

2

Primero crea el área con border, luego aplica border-image. Si olvidas ese paso, parecerá que la propiedad no funciona.

slice, porcentajes y fill

  • slice define dónde se corta la fuente: números (px de la imagen) o porcentajes.
  • fill conserva también la zona central, útil para marcos texturizados tipo sticker.
  • Un slice mal calibrado deforma esquinas; empieza con 1 en gradientes y ajusta más en imágenes reales.

width, repeat y estabilidad visual

1

border-image-width controla el grosor final del borde gráfico y no siempre coincide con border-width. Mantén una relación coherente para no romper proporciones.

2

repeat suele ser la opción más segura para patrones; round evita recortes raros cuando el tamaño no encaja exacto.

Fallback progresivo

  • Define un border-color útil antes de border-image para mantener contraste.
  • Usa @supports para activar el borde avanzado solo cuando compense.
  • Evita depender del marco para comunicar estado crítico (accesibilidad).

🧪 Aprende probando

Ejemplo Demo interactiva: slice, grosor y modo de repetición Ajusta parámetros clave para entender por qué un marco se ve limpio o deformado.
Ejemplo Ejemplo: tarjeta de producto con marco dinámico Patrón aplicable a cards destacadas sin pseudo-elementos extra.

🏁 Retos

Reto Reto: marco degradado Aplica border-image con gradiente y borde transparente.

🧰 Recursos

¿Qué es esto?

Soy Cristian Eslava y a veces hago webs para procrastinar yo y vosotros. culTest

La hice en febrero de 2026 para facilitar el aprendizaje de mis alumnos. La idea es aprender desarrollo web practicando y que el proyecto siga creciendo con nuevos temas, tests y retos.

Está inspirada en MDN, W3Schools, CodePen, Manz y muchos otros sitios de documentación sobre desarrollo web. Quería combinar teoría útil, ejemplos ejecutables, retos y el sistema de tests que ya tenía en culTest. culTest

Si te gustó, si no te gustó o si quieres escribirme, puedes hacerlo en cristianeslava@gmail.com