Bootstrap

Bootstrap

Tutorial Bootstrap: Imágenes responsive en Bootstrap

Bootstrap: Aprende a implementar imágenes responsive usando clases de Bootstrap CSS. Mejora la visualización en cualquier dispositivo con ejemplos prácticos.

Imágenes responsive en Bootstrap

Para asegurar que las imágenes dentro de una web sean adaptables y se ajusten correctamente a diversas resoluciones de pantalla, Bootstrap proporciona la clase .img-fluid. Aplicar esta clase a una imagen le ofrece max-width: 100%; y height: auto;, lo que permite que la imagen escale proporcionalmente al ancho del contenedor padre, evitando que sobrepase sus límites.

Para aplicar esta clase, simplemente incluye .img-fluid en el elemento <img>, de la siguiente manera:

<img src="ruta/de/la/imagen.jpg" class="img-fluid" alt="Descripción de la imagen">

Este sencillo ajuste garantiza que las imágenes dentro del diseño se mantengan siempre dentro de los límites del contenedor padre, mejorando la experiencia de usuario en dispositivos con diferentes tamaños de pantalla y resoluciones. Es especialmente útil en diseños responsive, asegurando que la visualización de las imágenes sea óptima en cualquier dispositivo, desde móviles hasta desktops.

Clases para recortar, ajustar y posicionar imágenes en Bootstrap CSS

Bootstrap proporciona varias clases para recortar, ajustar y posicionar imágenes de manera eficiente y estilística en tus proyectos. A continuación, se explican las principales clases y sus usos.

Clase .img-thumbnail

La clase .img-thumbnail añade un borde con un radio de 1 píxel y crea una apariencia de miniatura para las imágenes. Esto puede ser útil para mostrar imágenes de manera que parezcan fotografías en miniatura.

<img src="ruta/de/la/imagen.jpg" class="img-thumbnail" alt="Descripción de la imagen">

Esta clase combina propiedades de borde y padding, dando una sensación de miniatura a la imagen que se aplica.

Alineación de imágenes

Bootstrap ofrece varias utilidades de alineación para gestionar la posición de las imágenes dentro del contenedor.

Clases de flotación

Las clases de flotación como .float-start y .float-end permiten alinear imágenes a la izquierda y a la derecha, respectivamente.

<img src="ruta/de/la/imagen.jpg" class="rounded float-start" alt="Descripción de la imagen">
<img src="ruta/de/la/imagen.jpg" class="rounded float-end" alt="Descripción de la imagen">

Clase .mx-auto

Para centrar imágenes de nivel de bloque, se puede utilizar la clase .mx-auto juntamente con .d-block.

<img src="ruta/de/la/imagen.jpg" class="rounded mx-auto d-block" alt="Descripción de la imagen">

Centrado de imágenes en un contenedor

Otra forma de centrar imágenes es mediante el uso de la clase .text-center en un div contenedor.

<div class="text-center">
  <img src="ruta/de/la/imagen.jpg" class="rounded" alt="Descripción de la imagen">
</div>

Uso del elemento

Para manejar múltiples archivos de imagen y su compatibilidad con diferentes dispositivos a través del elemento <picture>, asegúrate de añadir clases .img-* directamente al <img> y no al elemento <picture>.

<picture>
  <source srcset="ruta/de/la/imagen.svg" type="image/svg+xml">
  <img src="ruta/de/la/imagen.jpg" class="img-fluid img-thumbnail" alt="Descripción de la imagen">
</picture>

Variables Sass

Bootstrap también ofrece variables Sass que pueden ser personalizadas para ajustar la presentación de las imágenes en miniatura:

$thumbnail-padding:                 .25rem;
$thumbnail-bg:                      var(--#{$prefix}body-bg);
$thumbnail-border-width:            var(--#{$prefix}border-width);
$thumbnail-border-color:            var(--#{$prefix}border-color);
$thumbnail-border-radius:           var(--#{$prefix}border-radius);
$thumbnail-box-shadow:              var(--#{$prefix}box-shadow-sm);

Estas variables permiten un control detallado sobre el estilo de las miniaturas, desde el padding hasta los colores de borde y fondo.

Imágenes de fondo en Bootstrap CSS

En Bootstrap, la incorporación de imágenes de fondo puede lograrse mediante el uso de propiedades CSS aplicadas directamente a elementos HTML. No obstante, para mantener la coherencia con el resto del framework y aprovechar sus capacidades responsive, es útil combinar estas propiedades con las clases y utilidades que Bootstrap proporciona.

Para establecer una imagen de fondo en cualquier elemento, se puede usar la siguiente sintaxis CSS:

.background-custom {
  background-image: url('ruta/de/la/imagen.jpg');
  background-size: cover;
  background-position: center;
}
<div class="background-custom">
  <!-- Contenido adicional aquí -->
</div>

Uso de utilidades de Bootstrap

Bootstrap cuenta con varias utilidades que permiten ajustar y mejorar la integración de las imágenes de fondo dentro de un layout responsive. Algunas de las más importantes son:

background-size

La propiedad background-size puede asumir varios valores, siendo los más comunes cover y contain. Mientras que cover asegura que la imagen cubra toda el área del elemento (eventualmente recortando partes de la imagen si es necesario), contain ajusta la imagen para que siempre esté completamente visible dentro del contenedor.

.background-cover {
  background-size: cover;
}
.background-contain {
  background-size: contain;
}

background-position

Esta propiedad permite definir la posición de la imagen de fondo dentro de su contenedor. Es útil para centrar la imagen o ajustar su posición en función del diseño deseado.

.background-center {
  background-position: center;
}
.background-top {
  background-position: top;
}
.background-bottom {
  background-position: bottom;
}

Ejemplo combinado

A continuación, se muestra un ejemplo práctico combinando varias de estas utilidades para lograr un efecto de imagen de fondo que se adapta responsivamente y se centra dentro de su contenedor:

.background-responsive {
  background-image: url('ruta/de/la/imagen.jpg');
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 400px; /* altura fija para el ejemplo */
}
<div class="background-responsive">
  <!-- Contenido adicional aquí -->
</div>

Consideraciones adicionales

  • Asegúrate de que las imágenes utilizadas tengan una resolución suficiente para evitar la pixelación cuando se visualizan en pantallas grandes.
  • El uso de imágenes con un tamaño de archivo optimizado mejora los tiempos de carga de la página. Herramientas de compresión de imágenes pueden ser muy útiles en este aspecto.
  • Considera el uso de pseudo-elementos (::before, ::after) para agregar imágenes de fondo sin afectar el contenido del elemento.

Al combinar las propiedades CSS estándar con las utilidades de Bootstrap, puedes garantizar que las imágenes de fondo se integren perfectamente en diseños responsive, manteniendo la estética y funcionalidad de la página.

Uso de figuras y pie de foto o descripciones

El componente <figure> en HTML5 se utiliza para encapsular contenido como imágenes, diagramas o ilustraciones que usualmente van acompañados de un pie de foto representado por el elemento <figcaption>. Bootstrap mejora y estiliza el uso de estos componentes a través de clases CSS predefinidas.

Aquí se presenta cómo se puede utilizar el componente <figure> junto con las clases de Bootstrap para imágenes y pies de foto.

Para envolver una imagen en un contenedor <figure> y añadir una descripción usando <figcaption>, puedes estructurar tu HTML de la siguiente manera:

<figure class="figure">
  <img src="ruta/de/la/imagen.jpg" class="figure-img img-fluid rounded" alt="Descripción de la imagen">
  <figcaption class="figure-caption">Una breve descripción de la imagen.</figcaption>
</figure>

Clases figure

  • .figure: Clase que aplica estilos básicos al contenedor <figure>.
  • .figure-img: Se aplica directamente al elemento <img> dentro del <figure> para proporcionar el estilo de imágenes correspondiente.
  • .figure-caption: Clase para estilizar el pie de foto <figcaption>, proporcionándole una apariencia estilística adecuada.

Estas clases brindan una forma coherente y estilísticamente agradable de presentar imágenes con descripciones en aplicaciones web.

Ejemplo avanzado de uso de figuras

Bootstrap permite personalizar aún más la apariencia y el comportamiento de las figuras incluyendo nuevas utilidades y estilos adicionales.

<figure class="figure">
  <img src="ruta/de/la/imagen.jpg" class="figure-img img-fluid rounded" alt="Descripción de la imagen">
  <figcaption class="figure-caption text-end">Descripción alineada a la derecha.</figcaption>
</figure>

Uso práctico para contenido descriptivo multimedia

Este tipo de estructura es muy útil en casos donde necesitas destacar descripciones detalladas de imágenes o ilustraciones específicas, proporcionando contexto adicional de una manera visualmente atractiva. Además, es esencial en informes, artículos y presentaciones en línea donde la combinación de imágenes y texto descriptivo mejora la comprensión y el impacto visual.

Por ejemplo, utilizando una disposición <figure> dentro de artículos científicos o técnicos, se puede lograr una presentación clara y organizada de los datos visuales con sus respectivas descripciones:

<figure class="figure">
  <img src="ruta/de/la/imagen-cientifica.jpg" class="figure-img img-fluid rounded" alt="Diagrama de resultados">
  <figcaption class="figure-caption">Figura 1: Diagrama mostrando los resultados de la investigación.</figcaption>
</figure>

Estos elementos aseguran que las figuras y sus pies de foto se presentan concisamente y se ajustan adecuadamente a diversos dispositivos y tamaños de pantalla, manteniendo la integridad y claridad de la información.

Certifícate en Bootstrap con CertiDevs PLUS

Ejercicios de esta lección Imágenes responsive en Bootstrap

Evalúa tus conocimientos de esta lección Imágenes responsive en Bootstrap con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.

Todas las lecciones de Bootstrap

Accede a todas las lecciones de Bootstrap y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.

Certificados de superación de Bootstrap

Supera todos los ejercicios de programación del curso de Bootstrap y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.

En esta lección

Objetivos de aprendizaje de esta lección

  • Implementar la clase .img-fluid para garantizar imágenes responsive.
  • Utilizar la clase .img-thumbnail para crear estilos de miniatura.
  • Aplicar clases de alineación como .float-start, .float-end, y .mx-auto.
  • Utilizar <picture> para gestionar múltiples formatos de imagen.
  • Personalizar estilos de imágenes usando variables Sass.
  • Integrar imágenes de fondo utilizando clases de Bootstrap.
  • Utilizar el componente <figure> y <figcaption> para descripciones de imágenes.