Tutorial HTML y CSS Gratuito - ¿Tu web tiene demasiado contenido? Agrega un botón de desplazamiento superior fácilmente

Tutorial HTML y CSS Gratuito – ¿Tu web tiene demasiado contenido? Agrega un botón de desplazamiento superior fácilmente

Añade un botón de "Ir arriba" en HTML y CSS para facilitar la navegación con desplazamiento suave y diseño flotante.

Aprende a crear un botón de “Ir arriba” en HTML y CSS para mejorar la navegación en tu página web. Descubre cómo fijarlo en pantalla, personalizar su diseño y lograr un efecto de desplazamiento suave.

Un botón de “Ir arriba” es una excelente forma de mejorar la usabilidad en páginas largas. En este tutorial, creado por AsensiDev, aprenderás a diseñar un botón fijo con HTML y CSS, que al hacer clic desplaza al usuario suavemente hasta la parte superior de la página.

Tutorial HTML y CSS Gratuito - ¿Tu web tiene demasiado contenido? Agrega un botón de desplazamiento superior fácilmente

Requisitos previos

Antes de comenzar, asegúrate de contar con lo siguiente:

  • Visual Studio Code instalado.
  • Live Server activado para previsualizar cambios en tiempo real.
  • Archivos index.html y styles.css creados en tu carpeta de proyecto.

Paso 1: Crear la estructura en HTML

En tu archivo index.html, agrega el siguiente código para generar el botón de “Ir arriba” y enlazarlo a la parte superior de la página:

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Botón Ir Arriba</title>
    <link rel="stylesheet" href="styles.css">
    <script src="https://kit.fontawesome.com/TU_CODIGO_KIT.js" crossorigin="anonymous"></script>
</head>
<body>
    <header id="header">
        <h1>Estás arriba de la web</h1>
    </header>

    <main>
        <p>Simulación de contenido extenso...</p>
        <!-- Se repite varias veces para probar el scroll -->
        <p style="height: 2000px;"></p>
    </main>

    <a href="#header" class="scroll-top">
        <i class="fas fa-arrow-up"></i>
    </a>
</body>
</html>

🔹 Explicación del código:

  • <a href="#header">: El botón enlaza a la parte superior mediante el id="header".
  • <i class="fas fa-arrow-up">: Usa un ícono de Font Awesome para la flecha.
  • <p style="height: 2000px;">: Simula una página larga con contenido.
body {
    font-family: Arial, sans-serif;
    background-color: #f4f4f4;
    margin: 0;
    padding: 20px;
    scroll-behavior: smooth; /* Hace que el scroll sea suave */
}

.scroll-top {
    position: fixed;
    bottom: 15px;
    right: 15px;
    background-color: #6200ea;
    color: white;
    padding: 12px;
    border-radius: 50%;
    text-align: center;
    font-size: 20px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease-in-out;
}

.scroll-top:hover {
    transform: translateY(-5px);
    background-color: #4500b3;
}

.scroll-top i {
    color: white;
}

🎨 ¿Qué mejoras aplicamos?

  • Botón flotante en la parte inferior derecha.
  • Diseño redondo con sombra para mejor visibilidad.
  • Efecto de elevación al pasar el mouse (hover).
  • Desplazamiento suave con scroll-behavior: smooth.

Paso 3: Agregar desplazamiento suave

El atributo scroll-behavior: smooth; en CSS hace que el desplazamiento al hacer clic en el botón sea progresivo y no brusco.

Si tu sitio no aplica el scroll suave, usa este código en JavaScript (script.js):

document.querySelector('.scroll-top').addEventListener('click', function (event) {
    event.preventDefault();
    window.scrollTo({ top: 0, behavior: 'smooth' });
});

💡 ¿Cómo funciona el código?

  • Captura el clic en el botón de “Ir arriba”.
  • Previene el comportamiento predeterminado del enlace.
  • Usa window.scrollTo() para desplazarse arriba con efecto suave.

Tambien lee:


Mira el tutorial completo

Este contenido forma parte del tutorial creado por AsensiDev. Si prefieres seguir el proceso en video, aquí tienes el enlace: 👇

Henry Hernandez

Henry Hernandez

Artículos: 342