Le animazioni dei fotogrammi chiave CSS aprono una vasta gamma di possibilità per ciò che può essere realizzato con i CSS. Molto più che semplici transizioni one-step, i fotogrammi chiave possono essere utilizzati per realizzare animazioni complesse e multi-step che sono piuttosto impressionanti.
Nel progetto di oggi, inizieremo da zero e costruiremo una pila di due foto che si espandono e scambiano il loro ordine di sovrapposizione quando si passa sopra di loro. Lungo la strada impareremo tutto su come brandire i fotogrammi chiave come un professionista e destreggiarsi tra tutti quei prefissi che girano la testa!
Cosa stiamo costruendo
Il concetto per questo progetto è piuttosto semplice. Immagina due foto, ruotate casualmente e impilate l'una sull'altra come se le avessi gettate su una scrivania. Il problema è che puoi solo vedere la foto in alto!
Per aiutare la foto in basso a catturare l'attenzione che merita, creeremo un evento al passaggio del mouse che separa prima le due foto, quindi fa scorrere la foto in alto dietro la foto in basso, cambiando effettivamente l'ordine di sovrapposizione.
Le probabilità sono, se leggi questo blog, sei un pensatore visivo, ecco come appare nelle immagini:
Animazioni di fotogrammi chiave e transizioni
Al momento il CSS ha due opzioni principali per l'animazione di un elemento: transizioni e fotogrammi chiave. Ogni volta che vuoi animare qualcosa, devi analizzare la situazione e decidere quale metodo è appropriato. Fortunatamente, decidere tra i due è davvero facile.
Ogni volta che hai una semplice animazione con un solo passaggio, una transizione è la soluzione perfetta. Ad esempio, se vuoi che qualcosa ruoti leggermente quando passi il mouse su di esso, probabilmente otterrai un effetto con una transizione. È sufficiente impostare lo stato originale, quindi lo stato ruotato e la transizione tra i due.
Ora, immagina di voler prendere ulteriormente questa idea e creare un quadrante animato come vedresti per rompere una cassaforte. Probabilmente vorresti che ruoti in senso orario per un secondo, poi in senso antiorario, poi magari di nuovo in senso orario, ti viene l'idea. Per questo scenario, vorresti sicuramente andare con un'animazione di fotogrammi chiave.
Quale dovremmo usare?
Sopra, abbiamo delineato l'animazione che vogliamo raggiungere. Ovviamente, sarà piuttosto complesso. Più oggetti si muoveranno avanti e indietro, ruotando e scambiando il loro ordine di accatastamento. Data questa complessità, le animazioni dei fotogrammi chiave sono la scelta naturale.
Supporto del browser
È bene tenere a mente che entrambi i fotogrammi chiave e le transizioni ora hanno un supporto discreto sui principali browser? tranne ovviamente per IE. Per quanto posso dire, né le transizioni né le animazioni saranno supportate fino a IE10, quindi ovviamente non si vuole fare affidamento su di esse per nessuna delle principali funzionalità.
Fonte: CanIUse.com
Passo 1. L'HTML
Basta accumulare, saltiamo nella costruzione di questo pollone. La prima cosa da fare è tracciare il progetto in HTML. Questo è ovviamente estremamente facile. Tutto ciò di cui abbiamo bisogno è un contenitore con due immagini.