- ¿Por qué necesitamos márgenes en una cuadrícula?
- Propiedades para controlar el espaciado
- Alineación del contenido en CSS Grid
Cuando usamos CSS Grid, no solo organizamos los elementos en filas y columnas, sino que también podemos controlar el espacio entre ellos y su alineación dentro del contenedor. En esta lección, veremos cómo hacerlo de manera eficiente.
¿Por qué necesitamos márgenes en una cuadrícula?
Miremos este ejemplo del blog de Códica:
Aquí, los elementos están organizados dentro de una cuadrícula, pero además, tienen espacios entre ellos. Estos márgenes evitan que el contenido se vea demasiado junto y mejoran la legibilidad.
En CSS Grid, en lugar de usar la propiedad tradicional margin, podemos aplicar márgenes automáticos entre las filas y columnas sin preocuparnos de anular márgenes extra en los bordes.
Propiedades para controlar el espaciado
Para agregar espacio entre los elementos dentro de una cuadrícula, existen tres propiedades:
| Propiedad | Descripción |
|---|---|
column-gap |
Controla el espacio entre las columnas |
row-gap |
Controla el espacio entre las filas |
gap |
Propiedad corta que permite definir ambos márgenes a la vez |
Antes, estas propiedades se llamaban grid-column-gap y grid-row-gap, pero han sido reemplazadas por column-gap y row-gap, que funcionan tanto en Grid como en Flexbox.
Ejemplo: Añadiendo espacio entre columnas
En la siguiente cuadrícula, tenemos dos columnas sin separación. Vamos a agregar un margen entre ellas.
👉 Haz clic para ver el ejemplo: Ver ejemplo en CodePen
.container {
display: grid;
grid-template-columns: 100px 100px;
column-gap: 30px; /* Espacio entre columnas */
}

Como puedes ver, ahora hay un espacio entre los elementos, pero el margen no se aplica dentro de ellos. Esto mantiene su contenido alineado correctamente.
Usando gap para filas y columnas
Para establecer un margen tanto entre columnas como entre filas, usamos gap:
.container {
display: grid;
grid-template-columns: 100px 100px;
grid-template-rows: auto auto;
gap: 20px 30px; /* 20px entre filas, 30px entre columnas */
}
Si solo pones un valor:
gap: 20px;
Ese valor se aplicará tanto a filas como a columnas.
Alineación del contenido en CSS Grid
Además del espaciado, podemos alinear los elementos dentro de la cuadrícula usando justify-content y align-content.
| Propiedad | Dirección | Uso |
|---|---|---|
justify-content |
Horizontal | Alinea las columnas dentro del contenedor |
align-content |
Vertical | Alinea las filas dentro del contenedor |
justify-content: Alineación horizontal de la cuadrícula
justify-content controla cómo se distribuyen las columnas dentro del contenedor. Estos son sus valores más comunes:
| Valor | Descripción |
|---|---|
start |
Alinea las columnas a la izquierda (comportamiento predeterminado) |
end |
Alinea las columnas a la derecha |
Ejemplo con space-between:
👉 Haz clic para ver el ejemplo: Ver ejemplo en CodePen
.container {
display: grid;
grid-template-columns: repeat(3, 100px);
justify-content: space-between;
}
Resumen
- Usa
column-gap,row-gapogappara añadir espaciado. justify-contentyalign-contentcontrolan la alineación.
Para acceder completo a curso necesitas un plan básico
El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.