Probando

Esta forma de contruir un slider de imágenes que vi en CSS Science tiene dos cosas que me gustan. Una es que todo se monta con CSS y no es necesario utilizar JavaScript. La otra es que la caja del visor se adapta al tamaño de la ventana automáticamente. Es fácil comprobarlo abriendo y cerrando esta misma que estas leyendo. El truco principal por así llamarlo, es flotar las imágenes una junto a otra y ocultarlas mediante un overflow. Luego, mediante unos botones radio a modo de controles, se van aplicando unos márgenes negativos equivalentes a 0, 1, 2, 3 y 4 veces (el ejemplo es para cinco imágenes) el 100% del ancho del contenedor y así es como se logra ir viendo las distintas imágenes. Una transición hace que simule el efecto slider y como comentan en la página, todo lo demás es estilo.
#slide1:checked ~ #slides .inner { margin-left:0; } #slide2:checked ~ #slides .inner { margin-left:-100%; } #slide3:checked ~ #slides .inner { margin-left:-200%; } #slide4:checked ~ #slides .inner { margin-left:-300%; } #slide5:checked ~ #slides .inner { margin-left:-400%; }
El fichero CSS completo es algo extenso, así que aquí lo dejo plegado. Lo que hay que hacer con él es copiarlo y pegarlo antes del cierre del SKIN (}]]></b:skin>), en la parte de estilo. También podéis descargarlo desde este enlace o desde este otro. Otra opción sería alojarlo en un servicio externo y luego hacer una llamada desde la plantilla mediante una de estas fórmulas: Enlace a alojamiento externo desde plantilla. Insertar antes de <b:skin><![CDATA[/*:
<link rel='stylesheet' type='text/css' href='FICHERO_ESTILO.CSS'/>
Enlace a alojamiento externo desde un post (o desde plantilla, antes de </head>:
<style type="text/css"> @import url(FICHERO_ESTILO.CSS); </style>
Una vez que tenemos nuestro CSS ya sólo resta construir el visor en sí mismo mediante HTML. Esta sería la estructura. Los DIV INFO y su contenido son opciones:
<div id="slider"> <input checked type="radio" name="slider" id="slide1" /> <input type="radio" name="slider" id="slide2" /> <input type="radio" name="slider" id="slide3" /> <input type="radio" name="slider" id="slide4" /> <input type="radio" name="slider" id="slide5" /> <div id="slides"> <div id="overflow"> <div class="inner"> <article><div class="info"> <h5>Título</h5> <a href="#">Autor</a></div> <img src="URL_IMAGEN" style="border: 0; max-width: 100% !important;" /> </article> <article><div class="info"> <h5>Título</h5> <a href="#">Autor</a></div> <img src="URL_IMAGEN" style="border: 0; max-width: 100% !important;" /> </article> <article><div class="info"> <h5>Título</h5> <a href="#">Autor</a></div> <img src="URL_IMAGEN" style="border: 0; max-width: 100% !important;" /> </article> <article><div class="info"> <h5>Título</h5> <a href="#">Autor</a></div> <img src="URL_IMAGEN" style="border: 0; max-width: 100% !important;" /> </article> <article><div class="info"> <h5>Título</h5> <a href="#">Autor</a></div> <img src="URL_IMAGEN" style="border: 0; max-width: 100% !important;" /> </article> </div> </div> </div> <div id="controls"> <label for="slide1"></label><label for="slide2"></label><label for="slide3"></label><label for="slide4"></label><label for="slide5"></label></div> <div id="active"> <label for="slide1"></label><label for="slide2"></label><label for="slide3"></label><label for="slide4"></label><label for="slide5"></label></div> </div>

Comentarios

Publicar un comentario

Entradas populares de este blog

Around the world in 80 days

Alice in Wonderland

The scarlet plague