Cerrar video

Cómo crear una barra de desplazamiento (scrollbar) personalizada para divi y wordpress.

por | Oct 20, 2020 | Tutorial gratuito | 0 Comentarios

Seguramente navegando por la red te has encontrado con sitios web que tienen una barra de desplazamiento personalizada y probablemente estés buscando la manera de hacer lo mismo para tu sitio web creado con divi. En este tutorial te mostraré cómo cambiar la apariencia de la barra de desplazamiento de forma muy fácil y rápida.

Si te has dado una vuelta por el apartado snippets que tengo en este sitio, seguramente ya viste que tenemos un fragmento de código CSS para personalizar la barra de desplazamiento nativa de forma muy fácil. Ese código css te puede venir bien si solo quieres cambiar la apariencia de la barra de desplazamiento que viene por defecto con los navegadores.

Pero en esta ocasión vamos a ir un paso más allá, es decir, vamos a crearnos nuestra propia barra de navegación para aplicarle un efecto más interesante. El efecto que vamos a realizar será una barra transparente que se va ir mostrando y rellenando con un color gradiente conforme vayamos haciendo scroll sobre la página ¿suena interesante verdad?

Para realizar este tutorial vamos a necesitar de pequeños fragmetos de código CSS para darle los estilos a la barra y un poco de javascript para activar la funcionalidad de la misma. Pero no te preocupes, tú solo tienes que copiar y pegar los fragmentos de código que te dejo a continuación…

Primero necesitamos agregar los contenedores de la barra de navegación, eso lo haremos a través de estos divs html:

<div id="progressBar"></div>
<div id="progressBarContainer"></div>

Posteriormente necesitamos darle estilos a esos divs mediante el siguiente fragmento de código CSS:

html {
  overflow: -moz-scrollbars-none;
  scrollbar-width: none;
}

::-webkit-scrollbar {
  width: 0;
  background: transparent;
}

#progressBarContainer {
  position: fixed;
  top: 0;
  right: 0;
  width: 10px;
  height: 100%;
  background: rgba(255, 255, 255, 0.05);
}

#progressBar {
  position: fixed;
  top: 0;
  right: 0;
  width: 10px;
  background: linear-gradient(to top, violet, red);
  height: 0;
  opacity: 0;
}

Y para activar la funcionalidad vamos a requerir del siguiente código javascript:

<script>
const progressBar = document.querySelector("#progressBar");
let totalPageHeight = document.body.scrollHeight - window.innerHeight;
window.onscroll = () => {
  let newProgressHeight = (window.pageYOffset / totalPageHeight) * 100;
  progressBar.style.height = `${newProgressHeight}%`;
  progressBar.style.opacity = `${newProgressHeight}%`;
};
</script>

Si no sabes dónde tienes que colocar cada uno de estos fragmentos de código, no esperes más y dale play al video…

¿Te ha gustado este tutorial? 🚀

¡Los Tutoriales Premium te van a encantar! Desde solo $10 USD al mes accede a más de 200 (¡y contando!) tutoriales únicos y exclusivos sobre Divi y WordPress. ¡Únete ahora y aumenta al 200% tus habilidades de diseño web con Divi!

Tutoriales Relacionados

0 comentarios

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Tutoriales Exclusivos

Tutoriales exclusivos OV Divi

Lleva tus sitios web creados con divi al siguiente nivel.

Accede a tutoriales exclusivos y únicos de divi y saca el máximo provecho del mejor tema y constructor visual para WordPress.

$10 USD / mes

Pin It on Pinterest