{"id":255665,"date":"2023-08-13T09:06:00","date_gmt":"2023-08-13T06:06:00","guid":{"rendered":"https:\/\/inform.click\/dai-vita-alle-tue-pagine-web-con-animazioni-e-transizioni-css\/"},"modified":"2023-08-13T09:34:00","modified_gmt":"2023-08-13T06:34:00","slug":"dai-vita-alle-tue-pagine-web-con-animazioni-e-transizioni-css","status":"publish","type":"post","link":"https:\/\/inform.click\/it\/dai-vita-alle-tue-pagine-web-con-animazioni-e-transizioni-css\/","title":{"rendered":"Dai vita alle tue pagine Web con animazioni e transizioni CSS"},"content":{"rendered":"<p>\n  I design dei siti web sono in continua evoluzione. Dal design reattivo, alla bella tipografia, agli schemi di codifica dei colori perfetti, alle illustrazioni, i creatori di siti Web escogitano ogni giorno nuove idee e design.\n<\/p>\n<p>\n  Gli utenti al giorno d'oggi hanno grandi aspettative sulle interfacce utente a causa di tali contenuti di alta qualit\u00e0 disponibili su Internet. Man mano che le interfacce dei siti web si evolvono, lo \u00e8 anche la tecnologia che le sta dietro. Uno dei principali componenti responsabili del miglioramento dell'interfaccia del sito Web \u00e8 <strong>il CSS<\/strong>.\n<\/p>\n<p>\n  I CSS o Cascading Style Sheets sono responsabili di rendere i siti molto interattivi definendone lo stile, il layout e il design. L'ultimo standard per CSS, ovvero CSS3, ha introdotto il concetto di <strong>animazioni<\/strong> e <strong>trasformazioni<\/strong> che migliorano l'esperienza dell'utente aggiungendo ulteriore profondit\u00e0 all'interfaccia utente. Con le animazioni e le transizioni CSS, puoi raccontare storie, creare effetti sontuosi e rendere l'interazione dell'utente con il tuo sito web molto efficace e significativa.\n<\/p>\n<p>\n  Un'animazione \u00e8 solo una simulazione del movimento che viene creata visualizzando una serie di oggetti come immagini uno dopo l'altro. La transizione, d'altra parte, \u00e8 fondamentalmente un processo in cui un oggetto cambia da uno stato all'altro. Ma quando parliamo di animazioni web ci sono fondamentalmente tre tipi: <strong>animazioni CSS<\/strong> o animazioni di fotogrammi chiave, <strong>transizioni CSS<\/strong> e <strong>animazioni JavaScript<\/strong>.\n<\/p>\n<p>\n  Animazioni CSS\n<\/p>\n<p>\n  Per creare animazioni in CSS abbiamo bisogno di modificare le propriet\u00e0 CSS di un elemento come un'immagine o un testo, per un certo periodo di tempo. Possiamo modificare le propriet\u00e0 degli elementi tutte le volte che vogliamo e possiamo anche impostare la durata dell'animazione.\n<\/p>\n<h5>\n  Specificando @keyframes<br \/>\n<\/h5>\n<p>\n  Le animazioni CSS sono definite bit con fotogrammi chiave. Questi fotogrammi chiave sono i punti intermedi dell'animazione. Tutte le animazioni CSS sono specificate sotto la regola @keyframes. Questi fotogrammi chiave specificano cosa succede all'elemento in un particolare momento, cio\u00e8\n<\/p>\n<ul>\n<li>quali propriet\u00e0 stanno cambiando\n  <\/li>\n<li>quando l'elemento si anima\n  <\/li>\n<li>come si anima l'elemento\n  <\/li>\n<\/ul>\n<p>\n  Puoi definire il tuo fotogramma chiave come:\n<\/p>\n<pre><code>@keyframes animation_name\n{\nfrom{ property: value; }\nto{ property: value; }\n}<\/code><\/pre>\n<p>\n  Qui &#8216;a' e &#8216;from' specificano l'inizio e la fine dell'animazione. Possiamo anche specificare animazioni per momenti intermedi di tempo tra l'inizio e la fine in questo modo:\n<\/p>\n<pre><code>@keyframes name\n{\n0%{ property: value; }\n50%{ property: value; }\n100%{ property: value; }\n}<\/code><\/pre>\n<p>\n  Qui 0% rappresenta l'inizio dell'animazione, 100% rappresenta la fine dell'animazione e 50% indica il cambiamento tra l'inizio e la fine. Ma come diciamo al browser per quanto tempo deve svolgersi l'animazione? Lo facciamo con l'aiuto di alcune <strong>propriet\u00e0 dell'animazione<\/strong>. Queste propriet\u00e0 di animazione sono associate all'elemento da animare. Per esempio:\n<\/p>\n<pre><code>element_name\n{\nanimation_property: value;\nstyle_property: value;\n}<\/code><\/pre>\n<p>\n  Qui l'elemento potrebbe essere qualsiasi tag HTML come div, span, img, p ecc. ed <code>style_property<\/code>\u00e8 qualsiasi propriet\u00e0 di stile CSS come background_color, width, height ecc. Osserviamo ora alcune propriet\u00e0 dell'animazione in dettaglio.\n<\/p>\n<ol>\n<li>\n    <strong>@keyframes<\/strong>: i fotogrammi chiave vengono utilizzati per specificare il codice di animazione come discusso sopra.\n  <\/li>\n<li>\n    <strong>animation-name<\/strong>: il nome specificato con @keyframes \u00e8 il nome dell'animazione. Questo nome viene utilizzato per fare riferimento ai fotogrammi chiave con l'elemento da animare.\n  <\/li>\n<li>\n    <strong>animation-duration<\/strong>: viene utilizzato per specificare la durata dell'animazione in secondi o millisecondi. Ad esempio, se lo impostiamo a 5 secondi, l'animazione verr\u00e0 eseguita solo per 5 secondi. Se non impostiamo questa propriet\u00e0, l'animazione non verr\u00e0 eseguita poich\u00e9 il suo valore predefinito \u00e8 0.\n  <\/li>\n<li>\n    <strong>animation-delay<\/strong>: possiamo ritardare l'inizio dell'animazione specificando il tempo di ritardo dell'animazione. Ad esempio, se desideri avviare l'animazione 5 secondi dopo il caricamento della pagina nel browser, imposta animation-delay su 5s.\n  <\/li>\n<li>\n    <strong>animation-direction<\/strong>: Possiamo dire al browser se un'animazione si muove nella direzione opposta o si alternano cicli con questa propriet\u00e0. Ad esempio, se desideri che l'animazione venga eseguita dall'inizio alla fine, imposta il valore di animation-duration su &#8216;normal'. Se vuoi che venga eseguito dall'inizio alla fine, imposta semplicemente il valore su &#8220;reverse&#8221;.\n  <\/li>\n<li>\n    <strong>animation-fill-mode<\/strong>: possiamo specificare lo stile dell'elemento quando l'animazione non viene riprodotta con questa modalit\u00e0, ad esempio quando l'animazione \u00e8 ritardata o terminata, quale dovrebbe essere lo stile dell'elemento.\n  <\/li>\n<li>\n    <strong>animation-iteration-count<\/strong>: il numero di volte in cui un'animazione pu\u00f2 essere riprodotta \u00e8 rappresentato da questa propriet\u00e0. Ad esempio, se vuoi riprodurre l'animazione una volta, impostala su 1 o se desideri che l'animazione venga riprodotta per sempre, impostala semplicemente su &#8220;infinito&#8221;.\n  <\/li>\n<li>\n    <strong>animation-timing-function<\/strong>: Questa propriet\u00e0 \u00e8 usata per specificare la curva di velocit\u00e0 dell'animazione come lineare, accelerazione o de-accelerazione.\n  <\/li>\n<li>\n    <strong>Animazione<\/strong>: \u00e8 la propriet\u00e0 abbreviata per l'impostazione di tutte le propriet\u00e0 dell'animazione.\n  <\/li>\n<\/ol>\n<p>\n  Ad esempio, puoi animare un oggetto che rimbalza con il seguente frammento di codice. Si noti come qui sia stata utilizzata la notazione abbreviata per l'animazione.\n<\/p>\n<pre><code>@keyframes slide {\n 0% {\n  left: 0;\n  top: 0;\n }\n 50% {\n  left: 244px;\n  top: 100px;\n }\n 100% {\n  left: 488px;\n  top: 0;\n }\n}\n \n.stage:hover .object {\n animation: slide 2s linear;    \/*shorthand animation property*\/\n}\n \n.object {\n background: #2db34a;\n border-radius: 50%;\n height: 50px;\n position: absolute;\n width: 50px;\n}<\/code><\/pre>\n<h3>\n  Transizioni<br \/>\n<\/h3>\n<p>\n  Le transizioni CSS vengono applicate alle propriet\u00e0 degli elementi per una certa durata di tempo in base a determinate <strong>funzioni di temporizzazione<\/strong>, note anche come funzioni di andamento. Per funzione di temporizzazione intendiamo una funzione che cambier\u00e0 le propriet\u00e0 degli elementi da uno stato all'altro come la progressione lineare, l'accelerazione o la de-accelerazione. Potresti aver notato che un'immagine scorre o si trasforma in un'altra immagine al passaggio del mouse o un suono viene riprodotto al clic del mouse. Questi sono tutti effetti di transizione che possono rendere interattivo un sito web.\n<\/p>\n<p>\n  <strong>Le funzioni di interpolazione<\/strong> sono importanti per creare transizioni. Specificano come cambieranno le propriet\u00e0. Possono anche alterare la velocit\u00e0 con cui il valore delle propriet\u00e0 cambia dal punto iniziale al punto finale di una transizione. Puoi applicare le transizioni nel modo seguente:\n<\/p>\n<pre><code>element\n{\nstyle_property: value;\ntransition_property: value;\n}<\/code><\/pre>\n<p>\n  Qui element specifica l'elemento HTML che vuoi trasformare come div, H1, img ecc. style_property \u00e8 lo stile CSS applicato a quell'elemento. Vediamo ora alcune <strong>propriet\u00e0 di transizione<\/strong> :\n<\/p>\n<ul>\n<li>\n    <strong>transition-property<\/strong>: l'effetto di transizione sar\u00e0 sempre applicato alla propriet\u00e0 CSS di un elemento come la sua larghezza, altezza, colore o forma. Il valore di questo attributo specifica la propriet\u00e0 CSS dell'elemento. L'effetto di transizione inizier\u00e0 ogni volta che questa propriet\u00e0 cambia, ad esempio al passaggio del mouse o al clic.\n  <\/li>\n<li>\n    <strong>transition-timing-function<\/strong>: Questa \u00e8 la funzione di facilitazione da applicare all'elemento. Questa propriet\u00e0 viene utilizzata per specificare la curva di velocit\u00e0 della transizione come l'andamento in entrata, in uscita, lineare ecc.\n  <\/li>\n<li>\n    <strong>transition-duration<\/strong>: \u00e8 proprio come la propriet\u00e0 animation-duration. Viene utilizzato per specificare la durata temporale dell'effetto di transizione in secondi o millisecondi. Ad esempio, se lo impostiamo su 5 secondi, la transizione si completer\u00e0 in 5 secondi. Se non impostiamo questa propriet\u00e0, non ci sar\u00e0 alcuna transizione poich\u00e9 il suo valore predefinito \u00e8 0.\n  <\/li>\n<li>\n    <strong>transition-delay<\/strong>: Con questa propriet\u00e0, possiamo specificare la durata del tempo per ritardare l'effetto di transizione. Ad esempio, se desideri avviare l'effetto 5 secondi dopo il passaggio del mouse, imposta il ritardo di transizione su 5 secondi.\n  <\/li>\n<li>\n    <strong>transizione<\/strong>: \u00e8 la propriet\u00e0 abbreviata per impostare insieme tutte le propriet\u00e0 di transizione di cui sopra.\n  <\/li>\n<\/ul>\n<p>\n  Ad esempio, il codice seguente cambier\u00e0 la larghezza dell'elemento div al passaggio del mouse. Vedi la propriet\u00e0 abbreviata di transizione applicata qui.\n<\/p>\n<pre><code>div {\n  width: 50px;\n  height: 50px;\n  background: blue;\n  transition: height 4s;     \/*transition shorthand on height for 4 seconds*\/\n}\ndiv:hover {\n  height: 200px;      \/* increase height on mouse hover *\/\n}<\/code><\/pre>\n<h3>\n  Animazioni contro transizioni<br \/>\n<\/h3>\n<h5>\n  Somiglianze tra animazioni e transizioni<br \/>\n<\/h5>\n<ul>\n<li>Sia la transizione che l'animazione vengono utilizzate per visualizzare i cambiamenti nelle propriet\u00e0 di un elemento.\n  <\/li>\n<li>Possiamo specificare la durata per quanto tempo devono avvenire la transizione e l'animazione.\n  <\/li>\n<li>Abbiamo alcune funzioni di temporizzazione per alterare la velocit\u00e0 di passaggio da un valore all'altro per transizioni e animazioni.\n  <\/li>\n<\/ul>\n<h5>\n  Differenze tra animazioni e transizioni<br \/>\n<\/h5>\n<ul>\n<li>Le transizioni CSS sono <strong>reattive<\/strong>. Devono essere attivati \u200b\u200bdagli utenti. Le animazioni, d'altra parte, vengono eseguite ogni volta che la pagina viene caricata sul browser. Non \u00e8 necessario attivarli.\n  <\/li>\n<li>Le transizioni vengono eseguite una volta e poi si fermano. Quindi, dobbiamo attivarli ancora e ancora mentre le animazioni possono <strong>essere ripetute<\/strong>. Possono iniziare da soli e poi ricominciare.\n  <\/li>\n<li>Il browser si occupa delle transizioni stesse. Dobbiamo solo specificare l'inizio e la fine della transizione. Possiamo impostare l'effetto di transizione ma non possiamo alterare il tasso di cambiamento di una transizione intermedia. Ad esempio, se un'immagine scorre al passaggio del mouse, la vedremo solo dissolvenza in entrata o in uscita mentre ci passiamo sopra.\n  <\/li>\n<li>Le animazioni, d'altra parte, forniscono la flessibilit\u00e0 necessaria per modificare le propriet\u00e0 tra l'inizio e la fine. Questo accade con l'aiuto di fotogrammi chiave. Ad esempio, possiamo impostare il colore di un'immagine in rosso per i primi 5 secondi, poi in blu per i successivi 5 secondi, quindi in verde per i successivi 5 secondi e giallo per gli ultimi 5 secondi dell'animazione. Quindi, abbiamo il controllo sulle animazioni.\n  <\/li>\n<\/ul>\n<h5>\n  Prefissi del venditore<br \/>\n<\/h5>\n<p>\n  Tutte le funzionalit\u00e0 CSS3 non sono supportate da tutti i browser. Quindi, utilizziamo prefissi insieme a quelle propriet\u00e0 CSS per browser specifici come -webkit- (Safari), -moz- (Firefox) o -o- (Opera). Ci\u00f2 consente ai marcatori del browser di aggiungere un supporto per quella funzione CSS3. Questi prefissi sono noti come <strong>prefissi del fornitore<\/strong> o <strong>prefissi del browser CSS<\/strong>. Quindi, dobbiamo inserire i prefissi del fornitore insieme alle propriet\u00e0 di animazione e transizione. Ad esempio, considera il codice seguente e osserva come sono stati utilizzati i prefissi del fornitore per Safari:\n<\/p>\n<pre><code>div {\nwidth: 100px;\nheight: 100px;\nbackground: red;\n \n\/* For Safari 3.1 to 6.0 *\/\n-webkit-transition-property: width;\n-webkit-transition-duration: 2s;\n-webkit-transition-timing-function: linear;\n-webkit-transition-delay: 1s;\n \n\/* Standard syntax *\/\ntransition-property: width;\ntransition-duration: 2s;\ntransition-timing-function: linear;\ntransition-delay: 1s;\n}<\/code><\/pre>\n<p>\n  <strong>Mancia!<\/strong> Puoi evitare questo trambusto usando librerie come <strong>-prefix-free<\/strong>. \u00c8 una libreria JavaScript che aggiunger\u00e0 il prefisso del browser corrente a qualsiasi codice CSS. Dai un'occhiata a molte di queste librerie disponibili sul web.\n<\/p>\n<h4>\n  Conclusione<br \/>\n<\/h4>\n<p>\n  Gli sviluppatori di siti Web possono applicare animazioni e trasformazioni per attirare gli utenti sui tuoi siti Web. Puoi usarli per migliorare moduli, notifiche, grafica di sfondo, immagini, grafici, scarabocchi, pulsanti di invito all'azione e altro. Basta usare la tua immaginazione e puoi trovare un modo per stupire i tuoi utenti. Ricorda che anche un piccolo cambiamento nel tuo sito web pu\u00f2 migliorarne l'aspetto e aumentarne il valore. Quindi, hai gi\u00e0 utilizzato le animazioni sul tuo sito web? Condividi le tue opinioni sull'utilizzo di animazioni e transizioni.\n<\/p>\n<\/p>\n<div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\n  Fonte di registrazione: <a target=\"_blank\" rel=\"noopener nofollow\" data-pssr=\"\" href=\"http:\/\/www.instantshift.com\/2017\/10\/09\/css-animations-transitions\/\">instantshift.com<\/a>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>I design dei siti web sono in continua evoluzione. Dal design reattivo, alla bella tipografia, agli schemi di codifica dei colori perfetti, alle illustrazioni, i creatori di siti Web escogitano ogni giorno nuove idee e design. Gli utenti al giorno d&#8217;oggi hanno grandi aspettative sulle interfacce utente a causa di tali contenuti di alta qualit\u00e0 disponibili su Internet. Man mano che le interfacce dei siti web si evolvono, lo \u00e8 anche la tecnologia che le sta dietro. Uno dei componenti principali responsabili del miglioramento dell&#8217;interfaccia del sito Web \u00e8 il CSS. I CSS o Cascading Style Sheets sono responsabili di rendere i siti molto interattivi definendone lo stile, il layout e il design. L&#8217;ultimo standard per CSS, ovvero CSS3, ha introdotto il concetto di&#8230;<\/p>\n","protected":false},"author":1,"featured_media":191873,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[69,121,56],"tags":[],"class_list":["post-255665","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-css-7","category-strumenti-web","category-web-e-wordpress"],"_links":{"self":[{"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/posts\/255665","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/comments?post=255665"}],"version-history":[{"count":0,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/posts\/255665\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/media\/191873"}],"wp:attachment":[{"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/media?parent=255665"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/categories?post=255665"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/inform.click\/it\/wp-json\/wp\/v2\/tags?post=255665"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}