Retomamos los artículos de BitacoraWeb explicando cómo crear una galería de imágenes de manera sencilla utilizando bootstrap con la librería javascript lightbox.

En primer lugar debemos incluir bootstrap para que nos facilite el trabajo para colocar las imágenes y de hacer nuestra galería responsive, con lo que incluiremos los css y js de bootstrap dentro del <head>:

<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

Como podéis ver, ya hemos incluido la libreria jquery que será necesaria a posteriori.

Ahora crearemos la estructura de la galería utilizando las etiquetas <articles> y <article> propias de html5:

                 <articles class="row">
			<article class="col-md-3">
				<a href="images/img1.jpg" data-lightbox="example-set" data-title="Regala">
				<img src="images/img1.jpg" alt="Regala" class="img-thumbnail"></a>
				<p>Regala</p>
			</article>
			<article class="col-md-3">
				<a href="images/img2.jpg" data-lightbox="example-set" data-title="Descansa">
				<img src="images/img2.jpg" alt="Descansa" class="img-thumbnail"></a>
				<p>Descansa</p>
			</article>
                 </articles>

A través de las clases le indicamos a bootstrap como debe de actuar con el elemento que posee esa clase. A <articles> le asignamos la clase «row» para indicarle que ocupará toda la fila, y en cada <article>, que contiene cada imagen, le asignamos la clase «col-md-3» lo cual nos permitirá tener hasta un máximo 4 imágenes en la misma fila pero reduciendo el número de imágenes según el tamaño del dispositivo con el que lo visualizamos.

Bootstrap interpreta 12 espacios para colocar los elementos, por eso si la columna ocupa 3 según la clase «col-md-3» el máximo serán 4 elementos(<article> en este caso), si les asignáramos «col-md-4» como máximo serían 3 elementos.

Para más información sobre bootstrap:

https://getbootstrap.com/examples/grid/

Ahora, dentro de cada <article> le añadimos la imagen con la clase «img-thumbnail» para la librería lightbox:

<img src="images/img1.jpg" alt="Regala" class="img-thumbnail">

También para el efecto lightbox tendremos que ponerla dentro un enlace(<a>) con los data-lightbox (sirve para agrupar las imágenes en un mismo lightbox o en varios diferentes) y data-title (sirve para mostrar el título que le pongamos en el lightbox):

<a href="images/img2.jpg" data-lightbox="example-set" data-title="Descansa">
<img src="images/img2.jpg" alt="Descansa" class="img-thumbnail">
</a>

También le pondremos al pie de cada imagen un <p> con el nombre para la imagen:

<p>Descansa</p>

Con lo que llevamos ya deberíamos tener lo suficiente para que se mostrara la galería pero nos faltaría darle funcionalidad al lightbox. Para ello le añadimos el css de lighbox dentro del <head>:

<link rel="stylesheet" href="lightbox/css/lightbox.min.css">

Y justo antes de cierre del body le añadimos la parte javascript de lightbox:

<script src="lightbox/js/lightbox.min.js"></script>
  <script>
	  lightbox.option({
		'albumLabel': "Imagen %1 de %2"
	  })
  </script>

Le hemos añadido la opción ‘albumLabel’ para que muestre el número de imagen actual con el total dentro del lightbox.

Más información sobre Lighbox: http://lokeshdhakar.com/projects/lightbox2/

Y con esto ya tendríamos nuestra galería.

Os dejo la demo online:

https://bitacoraweb.info/code/crear-galeria-javascript-jquery-bootstrap/

Y el descargable:

Descargar

Descargas realizadas: 2.596

Espero que te sirva, si es así comparte.

 

(Visitado 10.236 veces, 1 visitas hoy)