Grid-row en CSS: Cómo controlar las filas de una cuadrícula

| Última modificación: 13 de enero de 2025 | Tiempo de Lectura: 4 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Steve Jobs dijo una vez “El diseño no es sólo cómo se ve y se siente. El diseño es cómo funciona”. A menudo, las personas piensan que hablar de diseño es hablar únicamente de estética, pero no podrían estar más equivocados. Cuando hablamos de diseño web, por ejemplo, la funcionalidad es una de nuestras mayores prioridades, aunque eso no significa que debamos dejar de lado el atractivo visual y hacer interfaces aburridas o desagradables. El secreto está en el equilibrio. Por eso, hoy quiero hablarte de la propiedad grid-row en CSS, una propiedad que te ayudará a lograr un diseño bien estructurado y visualmente atractivo.

Grid-row en CSS: Cómo controlar las filas de una cuadrícula

¿Qué es grid-row en CSS?

Grid-row es una propiedad dentro del modelo de cuadrícula de CSS que te permite controlar la posición de un elemento a lo largo de las filas de tu diseño. En pocas palabras, esta propiedad define desde qué fila comienza y hasta qué fila termina un elemento dentro de un contenedor de cuadrícula. Esto permite manejar un posicionamiento más preciso y crear diseños más dinámicos, flexibles y visualmente interesantes.

De alguna manera, es como jugar al tetris, pues tú decides exactamente dónde y cuánto espacio ocupará cada pieza, pero hablando de las secciones de tu página web. De esta manera, puedes asegurar que los elementos de tu página web no solo estén bien alineados y organizados, sino que también contribuyan a una experiencia de usuario fluida y visualmente atractiva.

¿Para qué sirve grid-row?

Ciertamente, la propiedad grid-row es bastante versátil y tiene varias aplicaciones en el diseño web. A continuación, quiero hablarte de las más importantes:

  1. Controlar el tamaño de los elementos en las filas: Esta propiedad te resulta muy útil cuando tienes un diseño donde ciertos bloques deben ocupar más espacio vertical que otros, ya que puedes especificar el número de filas que deben abarcar.
  2. Organizar el contenido visualmente: Es ideal para garantizar que ciertos elementos clave, como los encabezados o las imágenes, estén colocados de forma estratégica y atractiva.
  3. Crear layouts dinámicos: La flexibilidad de esta propiedad te permite ajustar tus diseños fácilmente según las necesidades de cada proyecto.

Sintaxis de grid-row

Usar grid-row es más sencillo de lo que puedes imaginar, ya que esta es su sintaxis básica:

grid-row: <start> / <end>;

Valores posibles

  • <start>: Indica en qué línea de la cuadrícula debe comenzar el elemento.
  • <end>: Define en qué línea de la cuadrícula debe terminar.

Por ejemplo:

.item {
grid-row: 2 / 4;
}

Esto significa que el elemento ocupará desde la fila 2 hasta la fila 4 de la cuadrícula.

Ejemplos de grid-row

Después de haber visto su sintaxis, lo mejor es que te enseñe algunos ejemplos que te ayuden a comprender mejor cómo y en qué casos puedes implementar esta propiedad:

Expandir un elemento en varias filas

Supongamos que estás diseñando una galería y quieres que una imagen ocupe más espacio para destacarla:

<div class="gallery">
<div class="item large">Imagen destacada</div>
<div class="item">Foto 1</div>
<div class="item">Foto 2</div>
</div>

<style>
.gallery {
display: grid;
grid-template-rows: repeat(3, 100px);
grid-template-columns: repeat(3, 1fr);
gap: 10px;
}

.large {
grid-row: 1 / span 2;
grid-column: 1 / span 3;
}
</style>

En este ejemplo, el bloque con la clase large ocupa las dos primeras filas y tres columnas, dándole mayor protagonismo.

Crear un layout de revista

Si tienes un diseño de estilo revista, créeme que puede beneficiarse enormemente de la propiedad grid-row. Imagina algo así:

<div class="layout">
<header>Encabezado</header>
<aside>Barra lateral</aside>
<article>Contenido principal</article>
</div>

<style>
.layout {
display: grid;
grid-template-rows: 100px auto;
grid-template-columns: 1fr 3fr;
gap: 20px;
}

header {
grid-row: 1 / 2;
grid-column: 1 / -1;
}

aside {
grid-row: 2 / 3;
grid-column: 1 / 2;
}

article {
grid-row: 2 / 3;
grid-column: 2 / 3;
}
</style>

Aquí, la propiedad asegura que el encabezado ocupe toda la fila superior, mientras que la barra lateral y el contenido principal se organizan en la siguiente fila.

Recomendaciones para trabajar con grid-row

Realmente, pienso que es el tiempo y la práctica constante lo que nos hace ser expertos en algo. A mí hubiera gustado cuando estaba aprendiendo a desarrollar que alguien me hubiera dado todos los consejos del mundo para evitarme unos cuantos dolores de cabeza. Por eso, quiero darte en este momento algunas recomendaciones que me hubiera gustado conocer desde que empecé a trabajar con esta propiedad, pero recuerda que la práctica siempre es lo más importante:

  1. Dibuja tu diseño previamente: Un buen consejo es que antes de escribir el código, visualices y esboces cómo quieres que se vea tu diseño. Esto te ayudará a asignar valores a grid-row más eficientemente.
  2. Combina con otras propiedades de CSS Grid: También te recomiendo usar propiedades como grid-template-rows y grid-template-columns para definir el tamaño de las líneas de cuadrícula.
  3. Prueba con diferentes valores: Juega con números, palabras clave como span y combinaciones de -1 para experimentar con distintos layouts.
  4. Apóyate en herramientas: Existen una gran variedad de herramientas a tu disposición con las que puedes practicar, como CSS Grid Generator o Grid Garden.

Espero que después de todo lo que te he contado hayas aprendido que grid-row en CSS no solo simplifica el control de las filas en tus diseños, sino que también te da un nivel de personalización increíble. Con ejemplos como los que vimos, puedes implementar esta propiedad en proyectos reales y optimizar tu tiempo mientras creas diseños atractivos y organizados. Así que ya sabes, ¡la práctica hace al maestro!

Si te apasionan estos temas y quieres aprender a crear diseños increíbles, este es el momento perfecto para unirte al Bootcamp de Desarrollo Web de KeepCoding. Nuestro programa está diseñado para que aprendas no sólo a manejar las propiedades de CSS y HTML, sino también a dominar JavaScript, React y otras tecnologías altamenteme demandadas. Empieza ahora y aprende a construir interfaces completas y funcionales que harán la diferencia en tu carrera.

¿Qué estás esperando para transformar tu futuro laboral?

Alberto Casero

Alberto Casero es CTO en Watium, Fundador de Kas Factory & Coordinador del Bootcamp en Desarrollo Web.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo web

Full Stack Bootcamp

Conviértete en Full Stack Deeveloper en solo 10 meses. Accede a un sector con el 98,49% de empleabilidad con sueldos de hasta 80K.