HTML

Cuadrícula de imágenes con HTML y CSS

En este tutorial sobre diseño web te mostraré cómo mostrar una cuadrícula de imágenes en HTML usando CSS. Vamos a hacer que las imágenes ocupen determinado tamaño de la pantalla usando columnas y filas.

Por ejemplo, hacer una cuadrícula de 2 x 3 imágenes, o de 2 x 2, distribuyendo correctamente el tamaño de la página para que las imágenes tengan el mismo tamaño.

No vamos a usar Bootstrap, solo usaremos CSS, pues Bootstrap ya ofrece clases para hacer este tipo de cosas.

Al final tendremos algo parecido a una tabla de imágenes que ocupan el mismo ancho de la pantalla, usando HTML y CSS.

Diseño CSS

Comencemos viendo el diseño CSS. Como lo dije, vamos a tener filas y columnas. Cada fila tendrá varias imágenes, y habrá varias filas. De este modo, tendremos una cuadrícula.

* {
  box-sizing: border-box;
}

.columna {
  float: left;
  width: 50%;
  padding-right: 5px;
}

.fila::after {
  content: "";
  clear: both;
  display: table;
}

Definimos el ancho de la columna en 50 %, esto permitirá que tengamos 2 imágenes por fila (imágenes del mismo tamaño) pero además definimos un padding-right para separarlas a la derecha.

Si tú quisieras tener 3 columnas, el porcentaje sería 33 %, si quisieras 4 sería 25 %, etcétera. También definimos el tamaño de las imágenes para que ocupen todo el ancho disponible sin exceder los límites:

img {
  /* Para que sea responsiva */  width: 100%;
}

Ahora solo necesitamos usar elementos div para posicionar las imágenes y lograr la cuadrícula, usando las clases CSS fila y columna.

Cuadrícula de imágenes con HTML

Es momento de diseñar la cuadrícula. En este caso tendremos 2 filas, con 2 imágenes dentro de cada una. Queda así:

<body>
    <div class="fila">
        <div class="columna">
            <img src="https://picsum.photos/800/600">
        </div>
        <div class="columna">
            <img src="https://picsum.photos/800/600">
        </div>
    </div>
    <div class="fila">
        <div class="columna">
            <img src="https://picsum.photos/800/600">
        </div>
        <div class="columna">
            <img src="https://picsum.photos/800/600">
        </div>
    </div>
</body>

La fuente de las imágenes puede ser cualquiera, yo estoy usando un servicio en línea que da una imagen según la medida especificada, pero realmente esta fuente puede venir de cualquier lugar. Con eso, obtenemos la siguiente salida:

Cuadrícula de imágenes con HTML y CSS

Nota: obviamente puedes cambiar la fuente de cada imagen, yo usé la misma para las cuatro, pero puedes usar una fuente distinta.

Otro ejemplo: cuadrícula de 3 imágenes

Ahora te dejaré un ejemplo en donde se muestran 3 imágenes por fila, usando el 33 % del ancho. Recuerda que debemos modificar el CSS para que esto pase. El código completo queda así:

<!DOCTYPE html>
<html lang="es">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Cuadrícula de imágenes - By Parzibyte</title>
    <!--
   https://parzibyte.me/blog
  -->
    <style>
        * {
            box-sizing: border-box;
        }

        .columna {
            float: left;
            width: 33%;
            padding-right: 5px;
        }

        .fila::after {
            content: "";
            clear: both;
            display: table;
        }

        img {
            /* Para que sea responsiva */            width: 100%;
        }
    </style>
</head>

<body>
    <div class="fila">
        <div class="columna">
            <img src="https://picsum.photos/800/600">
        </div>
        <div class="columna">
            <img src="https://picsum.photos/800/600">
        </div>
        <div class="columna">
            <img src="https://picsum.photos/800/600">
        </div>
    </div>
    <div class="fila">
        <div class="columna">
            <img src="https://picsum.photos/800/600">
        </div>
        <div class="columna">
            <img src="https://picsum.photos/800/600">
        </div>
        <div class="columna">
            <img src="https://picsum.photos/800/600">
        </div>
    </div>
</body>

</html>

La salida ahora es:

Diseño HTML – cuadrícula de 3 imágenes con CSS

De este modo es como puedes diseñar una cuadrícula de imágenes en HTML, simplemente tienes que cambiar el ancho que ocupa cada columna. También puedes cambiar el padding o removerlo.

Te dejo con más tutoriales de HTML y CSS.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Entradas recientes

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

3 días hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

3 días hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

3 días hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

3 días hace

Esperar promesa para inicializar Store de Pinia con Vue 3

En este artículo te voy a enseñar cómo usar un "top level await" esperando a…

3 días hace

Solución: Apache – Server unable to read htaccess file

Ayer estaba editando unos archivos que son servidos con el servidor Apache y al visitarlos…

3 días hace

Esta web usa cookies.