Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Parallax su immagini di sfondo con HTML, CSS e JS

Come creare un semplice effetto parallax per le nostra pagine web utilizzando codice HTML, CSS e JavaScript
Come creare un semplice effetto parallax per le nostra pagine web utilizzando codice HTML, CSS e JavaScript
Link copiato negli appunti

L'effetto parallax scrolling è una tecnica di design che crea un'illusione di profondità facendo muovere le immagini di sfondo a una velocità diversa rispetto al contenuto in primo piano. Questo effetto è molto usato nei siti web moderni per rendere l'esperienza utente più coinvolgente e dinamica. Lo troviamo spesso in landing page accattivanti, siti di storytelling e pagine promozionali.

Effetto parallax su immagini di sfondo con HTML, CSS e JS

In questa guida, vedremo come creare un semplice effetto parallax su immagini di sfondo utilizzando HTML, CSS e JavaScript, partendo da un metodo base con CSS fino a un controllo avanzato tramite JavaScript. Alla fine di questa guida otterremo un risultato in cui ci sarà una pagina con un design moderno e un effetto di scorrimento fluido e accattivante.

Cosa serve per creare l'effetto Parallax

In questo tutorial realizzeremo una pagina web con effetto parallax, in cui le immagini di sfondo si muoveranno a velocità diversa rispetto al contenuto in primo piano. Creando un'illusione di profondità. Il nostro esempio sarà una landing page a tema natura, con sezioni che includono testi e immagini di sfondo con l'effetto parallax. Per creare questo effetto utilizzeremo HTML per la struttura della pagina, CSS per lo stile e un primo approccio all'effetto, e JavaScript per un controllo più avanzato del movimento in base allo scroll dell'utente.

<body>
    <section class="parallax parallax1">
        <div class="text">
            <h1>Esplora la Natura</h1>
            <p>Sei pronto a vivere un'esperienza unica?</p>
        </div>
    </section>
    <section class="content">
        <p>Scorri verso il basso per vedere l'effetto parallax in azione!</p>
    </section>
    <section class="parallax parallax2">
        <div class="text">
            <h1>Avventura Infinita</h1>
        </div>
    </section>
    <script src="script.js"></script>
</body>

Il codice HTML mostrato sopra rappresenta la struttura della pagina. Essa sarà composta da 3 sezioni principali, ognuna con del testo ed un'immagine di sfondo. In particolare, la prima e la terza hanno la classe parallax content

body, html {
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
    overflow-x: hidden;
}
.parallax {
    position: relative;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-size: 2em;
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.7);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}
.text {
    display: flex;
    flex-direction: column;
    text-align: center;
    background-color: #416070bd;
    padding: 20px;
}
.parallax1 {
    background-image: url('url-immagine-1');
}
.parallax2 {
    background-image: url('url-immagine-2');
}
.content {
    padding: 50px;
    text-align: center;
    background: white;
    font-size: 1.2em;
    color: #333;
}

Dopo una prima impostazione generale della pagina (con i tag body html parallax 100vh

Infine, con parallax1 parallax2 content

Il codice JavaScript

window.addEventListener("scroll", function () {
  let scrolled = window.scrollY;
  document.querySelector(".parallax1").style.backgroundPositionY =
    scrolled * 0.5 + "px";
  document.querySelector(".parallax2").style.backgroundPositionY =
    scrolled * 0.9 + "px";
});

Il codice JavaScript è breve e funziona in questo modo: la funzione rimane in attesa dello scroll della pagina e, tramite window.scrollY backgroundPositionY background-attachment: fixed 0.5 0.9

Grazie a questa combinazione di codice HTML + codice CSS, oltre che all'aggiunta di una funzione JavaScript, è stato possibile ottenere un risultato ad effetto parallax su delle sezioni con testo ed immagini. Di seguito viene riportata un'anteprima dell'esempio appena sviluppato.

Recap e conclusione

In questa guida, abbiamo visto come creare un effetto parallax basato sullo scroll utilizzando HTML, CSS e JavaScript. La pagina è stata strutturata con più livelli di sfondo, stilizzati per creare un senso di profondità. Grazie all'implementazione di un semplice script JavaScript è stato possibile muovere gli elementi a velocità diverse durante lo scroll.
Questo effetto è ampiamente utilizzato nel web moderno per rendere le pagine più dinamiche e coinvolgenti migliorando l'esperienza visiva dell'utente. Il parallax è spesso impiegato nei siti di portfolio, landing page e pagine promozionali, donando un tocco di eleganza e modernità.
L'esempio fornito può essere ulteriormente migliorato e personalizzato. Infatti è possibile modificare la velocità di movimento, aggiungere più livelli o combinare l'effetto con animazioni aggiuntive per rendere l'interazione ancora più fluida.

Inoltre, si può sperimentare con overlay colorati, effetti di sfocatura o persino integrazioni con librerie JavaScript per controlli avanzati. L'unico limite è la creatività!

Ti consigliamo anche