Vai al contenuto
animorio
EN
Torna alla libreria

L’ora che copre la foto

Si scorre in giù e la striscia va di lato; quando arriva un pannello con l’ora, la lastra prima resta ferma e si rimpicciolisce mentre il pannello la copre.

Scroll, Immagini, TestoGSAPImpegnativaA vita

Scorri dentro l’anteprima

Il codice

Una cartella che funziona da sola: index.html, style.css, script.js e le librerie da CDN.

Il codice di questa animazione è nell’accesso a vita.

L’anteprima resta libera: guardala, rallentala, provala sul telefono.

Accesso a vita

Cosa fa

La pagina è una striscia di lastre messe in fila: testi, fotografie, un titolo con una foto in mezzo. Scorrendo in giù la striscia va di lato, e ogni foto scorre anche dentro la sua cornice, un poco più piano. Poi arriva un pannello largo tutto lo schermo con un'ora enorme: la lastra che ha davanti non se ne va, resta ferma sullo schermo e si rimpicciolisce sparendo mentre il pannello le scivola sopra, e le cifre dell'ora salgono una alla volta dalla loro maschera.

Come funziona

La striscia

Uno schermo alto quanto la finestra con position: sticky e overflow: hidden; dentro, un binario flex largo quanto tutte le lastre. La sezione è alta quanto la corsa del binario più uno schermo, e un'unica timeline con scrub sposta il binario di un pixel a sinistra per ogni pixel di scorrimento. È lineare (ease none): serve così agli altri effetti.

Gli effetti agganciati

Ogni altro ScrollTrigger usa containerAnimation: la timeline del binario. Così start ed end si scrivono in orizzontale, per esempio 'left right' (il bordo sinistro dell'elemento tocca il bordo destro dello schermo) fino a 'right left'.

La foto nella cornice

Dentro ogni cornice c'è un livello largo il 120%. Mentre la cornice attraversa lo schermo, il livello va da x negativo (quanto sporge) a zero: la foto sembra più lontana della pagina.

Il pannello che copre

Mentre il pannello va da 'left right' a 'left left', la lastra prima si sposta a destra della larghezza del pannello: il binario la porta a sinistra, lei va a destra, e sullo schermo sta ferma. Nel primo quarto della corsa il suo contenuto va a scale 0,86 e sparisce; poi le cifre dell'ora salgono dalle maschere, una dopo l'altra.

Valori da cambiare

NomeFileDi partenzaCosa cambia
RIMPICCIOLISCEscript.js0.86A quanto si riduce la lastra coperta mentre sparisce.
SPARISCEscript.js0.25In quale frazione della corsa del pannello la lastra coperta è già sparita.
PARALLASSEscript.jstrueLe foto scorrono dentro la loro cornice. Con false restano ferme.
data-oraindex.htmlsul pannelloQualunque lastra con data-ora copre quella prima di lei. Può contenere un'ora, un titolo, un numero grande.

Quando usarla

Per un racconto per immagini che scorre come un rullino: un reportage, una giornata, una collezione. Il pannello che copre è un cambio di capitolo senza cambiare pagina.

Sul telefono

La striscia resta orizzontale e si guida col dito come la rotella: cornici e titoli si adattano all'altezza dello schermo.

Con il movimento ridotto

Niente striscia: le lastre stanno una sotto l'altra, le foto sono ferme e i pannelli dell'ora sono normali sezioni.

Trappole

  • La timeline del binario deve avere ease none: containerAnimation calcola le posizioni orizzontali dando per scontato un movimento lineare.
  • L'altezza della sezione va ricalcolata prima di ogni refresh (evento refreshInit): se cambia la larghezza del binario, cambia anche quanto bisogna scorrere.
  • Lo spostamento della lastra coperta dev'essere una funzione (x: () => larghezza del pannello) con invalidateOnRefresh, o dopo un ridimensionamento la lastra scivola via.
  • Non mettere transform sullo schermo sticky: un transform su un antenato rompe position: sticky.

Librerie

GSAP 3.15.0, ScrollTrigger (GSAP) 3.15.0, Mona Sans (font variabile) 5.3.0.

Peso: 24 KB dei nostri file.

Collaudo

Provata il 27 settembre 2026

  • Computer: Fatto
  • Telefono: Fatto
  • Movimento ridotto: Fatto
  • Safari su iPhone: Fatto

Licenza d’uso

Puoi usarla nei tuoi progetti e in quelli dei tuoi clienti. Non puoi rivenderla né ridistribuirla così com’è. GSAP resta sotto la sua licenza Standard. Licenza completa.

Tutte le animazioni