CodeAventura
CSS
▸Grid▸Span en Grid

Misión

●localhost:5173
29 / 30Span en Grid
Anterior

Span en grid

Cuando una tarjeta necesita ocupar más espacio

Hasta ahora, todas las celdas de tu Grid se han comportado con bastante disciplina: una celda, un hueco. Pero los layouts reales rara vez son tan obedientes.

A veces quieres que una tarjeta destacada ocupe más ancho que las demás. O que un bloque importante se extienda durante dos filas. O que una pieza del diseño rompa la monotonía sin romper la estructura.

Para eso existen grid-column y grid-row.

La idea clave: ocupar varias pistas

En Grid, cada item puede ocupar una o varias columnas y una o varias filas. No hace falta moverlo con píxeles ni jugar al Tetris manualmente. Solo le dices cuántas pistas quieres que abarque.

El caso más común es este:

Eso significa: "esta tarjeta debe ocupar el ancho de dos columnas".

Si el contenedor tiene tres columnas, la tarjeta destacada se comerá dos de ellas y dejará una libre para que Grid siga colocando el resto.

span es una forma muy humana de pensar

Podrías colocar elementos usando números de línea, como grid-column: 1 / 3. Es válido. Pero para empezar, span suele ser más intuitivo porque habla en el idioma de la intención:

  • grid-column: span 2: ocupa 2 columnas.
  • grid-row: span 2: ocupa 2 filas.

No estás diciendo "empieza exactamente aquí y termina exactamente allá". Estás diciendo "quiero que este bloque sea más grande".

Grid recoloca el resto por ti

Lo bonito de esto es que no tienes que reorganizar manualmente todos los demás elementos. Cuando un item ocupa más espacio, Grid vuelve a repartir las demás piezas alrededor de ese hueco.

Es decir:

  • Tú destacas una tarjeta.
  • Grid recalcula el tablero.
  • El resto de elementos cae donde toque.

Esta combinación de control y piloto automático es lo que hace que Grid sea tan agradable para layouts editoriales, dashboards y galerías.

Un ejemplo completo

Aquí estás diciendo:

  • El contenedor tiene 3 columnas iguales.
  • Hay espacio entre celdas con gap.
  • La tarjeta .destacada ocupa el ancho de 2 columnas.

El resultado visual ya deja de parecer una tabla rígida y empieza a sentirse como un layout con jerarquía.

Tu desafío 🚀

Haz que .panel use Grid con tres columnas iguales y consigue que .destacada ocupe dos columnas usando grid-column: span 2.

Una cuadrícula deja de ser plana en cuanto una pieza se atreve a destacar...