Un talk “stratificato” del nostro @decarola come piatto forte della mattina: da non perdere.
Ci vediamo @cssdayit per parlare di frontend, performance, scalabilità, architettura e futuro.
#weCodeDesign
Ci vediamo domani a #cssday!
Tutto pronto per questa fantastica edizione virtuale 🚀
Se hai il biglietto, controlla la tua mail: abbiamo mandato istruzioni importanti per la partecipazione!
Se non l'hai ancora preso, puoi farlo adesso: https://t.co/mVCYycevXJ
Nuova metrica disponibile su SpeedCurve: LCP misura quando viene visualizzato l’elemento più grande del viewport.
Qual è il Largest Contentful Paint del vostro sito?
(Psst: potete chiedercelo per avere un test e una consulenza con SpeedCurve) #gofaster
NEW! Largest Contentful Paint is now available in your SpeedCurve metrics. LCP measures when the largest element in the viewport is rendered. Here’s a good example of LCP on the @nytimes home page.
Glossary of #webperf metrics: https://t.co/0do6nal8mc
Migliorare le performance di un sito vuol dire chiedersi se ogni byte è giustificato, se deve arrivare prima o dopo.
Abbiamo risparmiato 110Kb (più del 20%) sul peso di una libreria JavaScript sostituendo momentJs con dayJs e facendo treeShaking sugli import di lodash #gofaster
Con migliaia di immagini per cui calcolare la distanza geografica da un punto (lat/long) un Web Worker ci ha permesso di rendere totalmente asincrono il calcolo, liberando l‘app #VueJS a vantaggio dell'interazione utente.
👉 https://t.co/Ou0ZYwEiU6
👉 https://t.co/qJLRoAohKH
RequestAnimationFrame è il miglior modo per effettuare operazioni impegnative in JS senza bloccare il browser. Richiede però di parcellizzare il compito. Quando non è possibile o semplice possiamo usare un Web Worker.
1/3
I Web Worker sono processi JavaScript separati dal main thread del browser, per cui non impattano sulle prestazioni del DOM (scroll, click/tap, etc.). Si delega il task completo e quando l'elaborazione è completata si riceve il risultato.
2/3
Per chi vuole saperne di più:
*perché è importante? evita al browser di ridisegnare la pagina dopo aver scaricato immagini dimensionate via CSS
*tecniche valide oggi*
- https://t.co/wOxVgPh5jh
- https://t.co/5aTKrbfuMc
*Proposal CSSWG
- https://t.co/WQg2rvw91B
Rimettiamo gli attributi width/height ai tag IMG! Chrome segue l’esempio di Firefox 🦊 usandoli per calcolare il rapporto immagine, riducendo il jank e migliorando le performance di visualizzazione.
Possiamo (finalmente) dire addio alle tecniche basate sul padding #gofaster
Chrome is implementing a change to avoid layout jank during image loading 🖼💨
This calculates aspect ratio using width/height attributes
(to size images using/CSS) before they have fully loaded. Already in Firefox 🦊
https://t.co/6GpCeyGPm9 ty @jensimmons & CSSWG!
We just added support for animating CSS Grid to @FirefoxNightly. You can use CSS animations to change the track lists on `grid-template-columns` and `grid-template-rows`.
Try it out, and send me a link to your demo! (Use Firefox Nightly as of today. No flag needed.)
📝 Introducing Background Fetch.
➡️ Perform long-running fetches in the background.
➡️ Hear about the result in your service worker.
➡️ User can see progress and pause/cancel.
Demo & docs: https://t.co/oBFJAKqb6X