Para comenzar con este artículo y la recomendación posterior debo decirles que tengan cuidado con su aplicación en sitios públicos ya que, como siempre aclaro, la utilización de CSS3 no está homogeneizada en todos los exploradores. Dicho esto, procedo a explicarles de qué se trata esta palabra parallax.
Hace algunos años, los diseñadores avanzados que utilizaban Flash para realizar animaciones hicieron abuso de este efecto para agregar un movimiento moderno y fuera de lo que comúnmente se veía en la web hasta ese momento. El parallax es un deslizamiento del eje del elemento primero hacia atrás de forma lenta y luego desapareciendo rápidamente hacia adelante, hay muchas variaciones, pero en este caso es la primera vez que veo uno aplicado a través de un slider que utiliza solo imágenes y código.
Para utilizarlo sobre proyectos propios, podemos hacerlo de forma bastante simple, siempre que tengan conocimientos básicos de código. Veremos que cada slider posee un título en h2, un enlace y una imagen, les recomiendo utilizar una transparente en .png para evitar problemas con los fondos (aunque esto será todo un problema en IE6).
<div id="da-slider" class="da-slider"> <div class="da-slide"> <h2>Some headline</h2> <p>Some description</p> <a href="#" class="da-link">Read more</a> <div class="da-img"> <img src="images/1.png" alt="image01" /> </div> </div> <div class="da-slide"> <!-- ... --> </div> <!-- ... --> <nav class="da-arrows"> <span class="da-arrows-prev"></span> <span class="da-arrows-next"></span> </nav> </div>
Para controlar el comportamiento de cada uno de estos elementos, lo haremos a través de una clase de dirección, por ejemplo: para enviarla a la derecha, utilizamos «da-slide-toright». Habrá cuatro clases diferentes para definir direcciones y orígenes.
- .da-slide-fromright
- .da-slide-fromleft
- .da-slide-toright
- .da-slide-toleft
Una vez definidas las clases, podemos controlar cada uno de los elementos:
/* Slide in from the right*/ .da-slide-fromright h2{ animation: fromRightAnim1 0.6s ease-in 0.8s both; } .da-slide-fromright p{ animation: fromRightAnim2 0.6s ease-in 0.8s both; } .da-slide-fromright .da-link{ animation: fromRightAnim3 0.4s ease-in 1.2s both; } .da-slide-fromright .da-img{ animation: fromRightAnim4 0.6s ease-in 0.8s both; } /* Adjust animations for different behavior of each element: */ @keyframes fromRightAnim1{ 0%{ left: 110%; opacity: 0; } 100%{ left: 10%; opacity: 1; } } @keyframes fromRightAnim2{ 0%{ left: 110%; opacity: 0; } 100%{ left: 10%; opacity: 1; } } @keyframes fromRightAnim3{ 0%{ left: 110%; opacity: 0; } 1%{ left: 10%; opacity: 0; } 100%{ left: 10%; opacity: 1; } } @keyframes fromRightAnim4{ 0%{ left: 110%; opacity: 0; } 100%{ left: 60%; opacity: 1; } }
Hay algunas opciones para editar el comportamiento desde el plugin cslider a saber:
$('#da-slider').cslider({ current : 0, // index of current slide bgincrement : 50, // increment the background position // (parallax effect) when sliding autoplay : false, // slideshow on / off interval : 4000 // time between transitions });
De esta forma, cambiando los elementos básicos de imágenes, títulos y las propiedades del movimiento, podremos personalizar este slider de forma ideal sin necesidad de animar con Flash. Es una excelente herramienta para conocer los alcances y posibilidades que ofrece CSS3 a diferencia de su predecesor, pero aún tenemos el problema de la incompatibilidad con ciertos exploradores. Aún así, para quienes trabajan en forma local, puede resultar muy útil.
Ver Demo de Parallax Content Slider | Descargar código | Tympanus
Juan
13 años ago
Gracias por la info 🙂
Sergio
12 años ago
Hola. He instalado el Parallax Content Slider y no encuentro la manera de adecuarlo a mi gusto. Me explico. Lo probé, colocando un shortcode en una página, acto seguido lo configuré para «only pages», ya que mi sitio web es para una empresa, sin post. Lo pruebo y… aparece lo que aparece… predeterminado… pero no tengo idea de dónde cargar los slide que yo quiera con las imágenes que yo quiera, el texto, el título, etc. Lo único que hace es capturar el texto que encuentra en cada una de las páginas y lo pone, el título… lo mismo, captura el nombra de cada página. Y en cuanto a la imagen… pone una miniatura que no se de donde la saca… pero siempre es la misma para todos los slides.
Son mis primeros pasos y no quiero tocar por tocar, pero sería bueno poder saber dónde se pueden cargar las imágenes, etc. En síntesis, configurar cada uno de los slides que yo quiero que aparezcan.
Alguna idea?. Gracias por tu tiempo.
Sergio
12 años ago
Soy yo nuevamente. Luego de ver un poco el plugin, veo que es muy básico y que no tiene para parar el movimiento con el ratón (al superponerlo y/o moverlo), entre otras cosas con las dimensiones de la caja (ancho y alto), tampoco para elegir las páginas que yo quiero mostrar, por el contrario muestra todas, realiza un slide por cada una. Etc.
Lo encontré buscando un slider que simplemente deslizara los slide en forma horizontal, ya que tengo otro instalado, el famoso WP Content Slider, el cual todo bien, excepto porque tiene 3 o 4 efectos de cambio de slide… pero ninguno me agrada y me pregunto por qué no tiene el más simple que es aquel donde la imagen se desliza a una cierta velocidad hacia la izquierda o derecha, según sea la dirección en la cual te quieras mover, atrás o adelante.
Dicho esto, sabes si se puede modificar ese tema en WP Content Slider o si por el contrario… algún otro slider (gratuito) que medianamente sea por el estilo o mejor?. Gracias por tu tiempo.
Sergio
12 años ago
Sí, yo otra vez. Al parecer, debería configurar Slider Display Mode en Static para luego meterme a editar el plugin, precisamente el archivo llamado wp-parallax-content-slider/static-slides-sample.php , el cual viene predefinido con 4 slides. No sé hasta donde podré cambiar la configuración de esto pero lo intentaré. Me refiero al estilo, etc. Respecto de imagenes, cantidad de slide, texto, etc. Será cuestión de agregar o quitar rutinas de código php, editar rutas de origen de las imágenes, etc. No sé si se podrá cambiar las dimensiones de la caja que contiene a los slides, porque hasta donde veo, ocupa todo el ancho de la página y algo similar en cuanto al alto. Me entra la pregunta de si se escala automáticamente al tamaño del contenedor (ordenador, portátil, tableta, móvil, etc.). Ya veremos. Cualquier consejo… bienvenido será. Bueno, saludos y gracias por tu tiempo.
Sergio
12 años ago
Lo que no puedo encontrar es la manera de insertar el código necesario para que ejecute la pausa al mover o posicionar el ratón sobre el slider. Alguna idea?. Gracias.
Pablo
12 años ago
Hola Sergio, te pido disculpas, recién veo tus comentarios.
En cuanto a tu ultima pregunta, creo que seria interesante utilizar el selector correspondiente al DIV que contiene el slider. Entonces lo que podrías hacer es utilizar este selector mediante jQuery para que detecte el mouseover y que lance la pausa del slider. En contraparte deberías hacer lo mismo, es decir utilizar ese mismo selector pero con el evento mouseout para lanzar nuevamente el play al slider.
Por favor avisame si algo no se entendió.
Un abrazo