Regístrate para acceder a más de 15 cursos gratuitos de programación con un simulador

La cuadrícula implícita CSS: Diseño con Grid

Hasta ahora, hemos trabajado con cuadrículas definidas con precisión: establecíamos un número de filas y columnas y colocábamos los elementos dentro de las celdas.

🤔 Pero surge una pregunta interesante: ¿qué pasa si intentamos ubicar un elemento fuera de los límites de la cuadrícula especificada?

Para entender esto, vamos a hacer un experimento con una cuadrícula de 6x6 en la que cada celda mide 30px x 30px.

Un experimento

Observa la cuadrícula inicial con tres elementos ubicados dentro de los límites establecidos:

👉 Haz clic para ver el ejemplo: Ver ejemplo en CodePen

Ahora intentemos mover el primer elemento a la columna 7, que aún no existe. Para hacerlo, usamos nth-child para seleccionar el primer elemento y grid-column-start: 7; para moverlo.

👉 Haz clic para ver el ejemplo: Ver ejemplo en CodePen

Es probable que el resultado te parezca inesperado. El primer elemento efectivamente se ha movido, pero ahora es demasiado ancho y ha empujado los demás elementos hacia una nueva fila.


Qué pasó con la cuadrícula

Si inspeccionamos la cuadrícula con las herramientas de desarrollo del navegador (DevTools), veremos lo siguiente:

Cuadrícula en Chrome DevTools

Aquí es donde ocurre la magia: la cuadrícula automáticamente creó una nueva columna vacía para colocar el elemento. Como esta nueva columna no tiene un ancho definido, ocupa todo el espacio disponible, lo que provoca que los demás elementos se desplacen.

Intentemos ahora mover el primer elemento a la octava columna:

👉 Haz clic para ver el ejemplo: Ver ejemplo en CodePen

Ahora el elemento se ha reducido exactamente a la mitad. Si miramos la cuadrícula en DevTools, veremos esto:

Cuadrícula en Chrome DevTools

Como no especificamos un tamaño fijo, el navegador distribuye el espacio libre entre las nuevas columnas de forma equitativa.

¿Qué es la cuadrícula implícita?

La cuadrícula implícita es la parte de la cuadrícula que no hemos definido explícitamente, pero que se genera automáticamente cuando los elementos lo necesitan.

Este efecto no solo ocurre después de la cuadrícula, sino también antes. Probemos establecer el primer elemento en la columna -8, es decir, una posición antes de la cuadrícula actual.

👉 Haz clic para ver el ejemplo: Ver ejemplo en CodePen

Ahora la cuadrícula completa se ha desplazado a la derecha, dejando espacio libre a la izquierda para la nueva celda. Al inspeccionar la cuadrícula observamos esto:

Cuadrícula en Chrome DevTools

Si seguimos moviendo el elemento más a la izquierda (grid-column-start: -9), algo interesante sucede: el segundo elemento se moverá a la cuadrícula implícita.

👉 Haz clic para ver el ejemplo: Ver ejemplo en CodePen

Eso ocurre porque los elementos están organizados en el flujo natural de la cuadrícula y seguirán acomodándose conforme haya espacio disponible.


Controlando la cuadrícula implícita

Hasta ahora, hemos dejado que el navegador defina automáticamente el tamaño de las pistas implícitas. Pero, para mayor control, usamos dos propiedades:

  • grid-auto-rows → Define la altura de las filas implícitas.
  • grid-auto-columns → Define el ancho de las columnas implícitas.

Probemos agregando grid-auto-columns: 50px;, lo que hará que las columnas implícitas tengan 50 px de ancho en lugar de ocupar todo el espacio disponible.

👉 Haz clic para ver el ejemplo: Ver ejemplo en CodePen

Ahora, las columnas implícitas tienen un tamaño fijo y el contenedor ya no ocupa toda la pantalla.

Cuadrícula en Chrome DevTools

grid-auto-rows en acción

Las filas implícitas funcionan un poco diferente. Una celda no puede ser más alta que su contenido, pero podemos establecer un tamaño mínimo con grid-auto-rows.

Observemos este ejemplo con una cuadrícula de 2x2 en la que agregamos un elemento extra que genera una tercera fila implícita.

Si dejamos grid-auto-rows: auto;, la altura de la nueva fila dependerá de su contenido.

Ahora, cambiemos grid-auto-rows a 50px para asegurarnos de que todas las filas tengan una altura consistente.

👉 Haz clic para ver el ejemplo: Ver ejemplo en CodePen


Resumen

  • La cuadrícula implícita se genera automáticamente cuando ubicamos elementos fuera de la cuadrícula definida.
  • Si no especificamos un tamaño, las pistas implícitas ocuparán todo el espacio disponible.
  • Podemos controlar el tamaño de las pistas implícitas con grid-auto-rows y grid-auto-columns.
  • El inspector de elementos del navegador nos ayuda a visualizar la cuadrícula y entender su comportamiento.

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.

Obtener acceso
130
cursos
1000
ejercicios
2000+
horas de teoría
3200
test

Obtén acceso

Cursos de programación para principiantes y desarrolladores experimentados. Comienza tu aprendizaje de forma gratuita

  • 130 cursos, 2000+ horas de teoría
  • 1000 ejercicios prácticos en el navegador
  • 360 000 estudiantes
Al enviar el formulario, aceptas el «Política de privacidad» y los términos de la «Oferta», y también aceptas los «Términos y condiciones de uso»

Nuestros graduados trabajan en empresas como:

Bookmate
Health Samurai
Dualboot
ABBYY