Base di riferimento 2023

Baseline sarà in arrivo su caniuse.com. In questo post, scoprirai l'integrazione e alcune delle funzionalità che sono diventate parte di Baseline nel 2023.

Con la nuova definizione di Baseline, il ciclo di vita di una funzionalità prevede due fasi. Innanzitutto, quando sarà disponibile da poco, poi completamente disponibile dopo 30 mesi. Una funzionalità diventa parte di Baseline appena disponibile quando diventa interoperabile nei seguenti browser:

  • Safari (macOS e iOS)
  • Firefox (computer e Android)
  • Chrome (desktop e Android)
  • Edge (computer)

La base di riferimento arriva su Can I Use

Come passaggio successivo per chiarire la disponibilità delle funzionalità, a partire da oggi Baseline inizierà ad arrivare su Can I Use. Quando visiti alcune pagine della pagina Posso usare la funzionalità, viene visualizzato un badge che indica se la funzionalità è disponibile in Baseline su larga scala.

Screenshot della sezione Posso usare il badge con il badge ampiamente disponibile nel layout griglia CSS.

Anche le funzionalità nella base di riferimento disponibili di recente mostreranno un badge e l'anno in cui sono diventate disponibili. Quindi, tutto ciò che è diventato interoperabile nel set di browser principali quest'anno fa parte di Baseline 2023.

Screenshot della sezione Posso usare il badge con il nuovo badge disponibile nelle query contenitore.

Nel resto di questo post, scopri le funzionalità che hanno raggiunto questo traguardo nel 2023. Tutte queste funzionalità sono disponibili nella versione Baseline 2023.

Dimensione delle query del container e unità di query del container

Le query relative alle dimensioni del contenitore ti consentono di eseguire query sulle dimensioni di un elemento, in modo molto simile alle query supporti che consentono di eseguire query sulle dimensioni dell'area visibile. Semplificano molto la creazione di componenti riutilizzabili, poiché puoi creare componenti che reagiscono alle dimensioni dell'area in cui sono posizionati.

Supporto dei browser

  • 105
  • 105
  • 110
  • 16

Fonte

Il design della scheda seguente cambia in base alla larghezza del componente. Per saperne di più, consulta Le query container vengono visualizzate in browser stabili.

Nuovi spazi colore e funzioni

CSS ora supporta gli spazi colore che consentono di accedere a colori al di fuori della gamma di colori sRGB. Ciò significa che sono supportati i display HD (alta definizione), che utilizzano i colori della gamma HD.

Nuovi modelli di colore

Ora nella base di riferimento, le funzioni colore lch(), lab(), oklch() e oklab() consentono di accedere ai modelli di colore LCH, Lab, OKLCH e OKLab.

Supporto dei browser

  • 111
  • 111
  • 113
  • 15

Fonte

Uno screenshot dell'editor gradient.style con una sfumatura vivace dal rosa al blu.
Prova i nuovi spazi colore utilizzando gradient.style.

La funzione color-mix()

Inoltre, nuove funzioni colore sono diventate parte di Baseline. La funzione color-mix() consente di combinare un colore con un altro, in qualsiasi spazio colore. Nel CSS seguente, il 25% di blu viene mescolato al bianco nello spazio colore sgsuite.

.example {
  background-color: color-mix(in srgb, blue 25%, white);
}

Supporto dei browser

  • 111
  • 111
  • 113
  • 15

Fonte

Scopri di più su color-mix().

La funzione color()

La funzione color() può essere utilizzata per qualsiasi spazio colore che specifichi i colori con i canali R, G e B. color() prende prima un parametro dello spazio colore, poi una serie di valori di canale per RGB e, facoltativamente, alcuni alfa. Puoi utilizzare: srgb, srgb-linear, display-p3, a98-rgb, prophoto-rgb, rec2020, xyz, xyz-d50 e xyz-d65. Ad esempio:

.valid-css-color-function-colors {
  --srgb: color(srgb 1 1 1);
  --srgb-linear: color(srgb-linear 100% 100% 100% / 50%);
  --display-p3: color(display-p3 1 1 1);
  --rec2020: color(rec2020 0 0 0);
  --a98-rgb: color(a98-rgb 1 1 1 / 25%);
  --prophoto: color(prophoto-rgb 0% 0% 0%);
  --xyz: color(xyz 1 1 1);
}

La guida ai colori CSS ad alta definizione fornisce molti altri esempi dei nuovi spazi colore e delle nuove funzioni, oltre a informazioni su dove utilizzare quando.

Flussi di compressione

L'API Compression Streams è un'API JavaScript per comprimere e decomprimere flussi di dati. Grazie all'utilizzo di questa compressione integrata, le applicazioni non dovranno più includere una libreria di compressione.

Supporto dei browser

  • 80
  • 80
  • 113
  • 16.4

Fonte

Scopri di più nella pagina Gli stream di compressione sono ora supportati in tutti i browser.

Tela fuori schermo

Prima di OffscreenCanvas, le funzionalità di disegno su tela erano legate all'elemento <canvas>, il che significava che dipendeva direttamente dal DOM. OffscreenCanvas, come implica il nome, disaccoppia il DOM e l'API Canvas spostandolo fuori dallo schermo.

Grazie a questo disaccoppiamento, il rendering di OffscreenCanvas è completamente scollegato dal DOM, quindi offre alcuni miglioramenti della velocità rispetto al canvas normale, in quanto non avviene alcuna sincronizzazione tra i due. Inoltre, può essere utilizzato per spostare il lavoro di rendering su un web worker, anche se non è disponibile un DOM, liberando il thread principale e rendendo l'applicazione più reattiva.

Supporto dei browser

  • 69
  • 79
  • 105
  • 16.4

Fonte

Scopri di più in OffscreenCanvas: accelera le operazioni su canvas con un web worker

Precaricamento modulo

Il precaricamento dei moduli può ridurre i tempi di download ed elaborazione. Aggiungi rel="modulepreload" all'elemento link che fa riferimento a un modulo JavaScript e il browser ottiene il modulo, lo analizza e lo compila e inserisce i risultati nella mappa del modulo pronti per l'esecuzione.

Supporto dei browser

  • 66
  • ≤79
  • 115
  • 17

Fonte

Scopri di più nell'articolo Precaricare i moduli.

Funzioni trigonometriche in CSS

Nel 2023 le funzioni trigonometriche della specifica CSS Values and Units Level 4 sono diventate interoperabili. Ciò significa che le funzioni sin(), cos(), tan(), asin(), acos(), atan() e atan2() fanno parte di Baseline 2023.

Supporto dei browser

  • 111
  • 111
  • 108
  • 15,4

Fonte

Questa demo utilizza le funzioni trigonometriche per spostare gli elementi lungo un percorso circolare intorno a un punto centrale.

Scopri come utilizzare queste funzioni e scoprire alcuni casi d'uso in Funzioni trigonometriche in CSS.

L'attributo inerte

Inerte indica l'assenza della capacità di muoversi, quindi quando contrassegni qualcosa di inerte, si rimuove il movimento o l'interazione da questi elementi DOM. L'attributo inert fa sì che il browser ignori l'elemento.

  • L'evento click non viene attivato se un utente fa clic sull'elemento.
  • L'elemento non sarà evidenziato.
  • L'elemento e i suoi contenuti sono esclusi dall'albero dell'accessibilità.

Supporto dei browser

  • 102
  • 102
  • 112
  • 15.5

Fonte

Questo attributo deve essere aggiunto agli elementi fuori schermo o nascosti in altro modo. Per saperne di più, consulta L'attributo inerte.

Griglia nel layout griglia CSS

Il valore subgrid per grid-template-columns e grid-template-rows consente di utilizzare le tracce definite in una griglia principale all'interno di griglie nidificate. Ciò significa che puoi allineare tra loro gli elementi all'interno di queste griglie nidificate.

Supporto dei browser

  • 117
  • 117
  • 71
  • 16

Fonte

Nell'articolo sottogriglia CSS troverai alcuni esempi e link a molti altri post ed esempi che evidenziano i casi d'uso di questa griglia.

Formato numerico V3

Intl.NumberFormat V3 è un insieme di nuove funzionalità per Intl.NumberFormat, che sono diventate parte di Baseline nel corso del 2023. Le funzionalità aggiuntive sono:

  • Tre nuove funzioni per formattare gli intervalli di numeri: formatRange, formatRangeToParts e selectRange.
  • Enum raggruppamento
  • Nuove opzioni di arrotondamento e precisione
  • Priorità di arrotondamento
  • Interpretare le stringhe come decimali
  • Modalità di arrotondamento
  • Segno negativo

Supporto dei browser

  • 106
  • 106
  • 116
  • 15,4

Fonte

La proposta per NumberFormat V3 descrive nel dettaglio ciascuna delle nuove funzionalità.

L'API Fullscreen

L'API Fullscreen consente di inserire un elemento, ad esempio <video>, in modalità a schermo intero chiamando il metodo requestFullscreen(). Fornisce inoltre metodi per rilevare se un elemento è in modalità a schermo intero e se il documento è in uno stato che ti consente di richiedere la modalità a schermo intero.

Supporto dei browser

  • 71
  • 79
  • 64
  • 16.4

Fonte

Scopri di più in questa guida all'API Fullscreen su MDN.

Il selettore CSS :has()

Baseline 2023 è il selettore :has(), che verrà visualizzato in Firefox 121 il 19 dicembre. Tra gli altri utilizzi, questo selettore funge da selettore principale e ti consente di selezionare un elemento in base agli elementi che si trovano al suo interno. Ad esempio, puoi applicare CSS diversi a seconda che all'interno di un elemento sia presente o meno un'immagine.

Supporto dei browser

  • 105
  • 105
  • 121
  • 15,4

Fonte

Scopri di più in :has(): il selettore della famiglia.

Altre funzionalità incluse in Baseline quest'anno

In questo post sono incluse alcune delle funzionalità principali che sono diventate parte di Baseline quest'anno, ma ce ne sono altre.

Molte di queste funzionalità hanno raggiunto l'interoperabilità grazie al lavoro collaborativo di Interop 2023. È entusiasmante vedere come le funzionalità possono essere implementate attraverso questo processo e come arrivare a Baseline come nuove disponibili, così da impostare il timer in modo che diventino ampiamente disponibili. In questo modo, viene creato un percorso più chiaro per decidere quando adottare le funzionalità nei tuoi progetti.