Chrome 119 beta

Chrome 119 beta ti offre la sintassi dei colori CSS, nuove pseudo-classi e molto altro.

Se non diversamente indicato, le modifiche descritte si applicano alla release più recente del canale beta di Chrome per Android, ChromeOS, Linux, macOS e Windows. Scopri di più sulle funzionalità elencate qui tramite i link forniti o dall'elenco su ChromeStatus.com. Chrome 119 è in versione beta a partire dal 4 ottobre 2023. Puoi scaricare la versione più recente da Google.com per computer oppure dal Google Play Store per Android.

CSS

In questa versione sono state aggiunte quattro nuove funzioni CSS.

Pseudo-classi CSS :user-valid e :user-invalid

Le pseudo-classi :user-invalid e :user-valid rappresentano un elemento rispettivamente con input errato o corretto, ma solo dopo che l'utente ha interagito in modo significativo con l'elemento. È simile a :valid e :invalid, ma con il vincolo aggiunto che queste pseudo-classi corrispondono solo dopo che l'utente ha interagito con l'elemento.

Sintassi del colore relativo CSS (RCS)

La sintassi dei colori relativa consente agli sviluppatori di definire i colori modificando i parametri di altri colori.

Ad esempio: oklab(from magenta calc(l * 0.8) a b); restituisce un magenta oklab più chiaro dell'80%.

Valori della forma della forma del percorso dei clip del CSS

La proprietà CSS clip-path ora supporta i valori <geometry-box> per controllare la casella di riferimento del clip, rendendo clip-path più facile da utilizzare. Questi valori casella possono essere utilizzati insieme a forme di base (ad esempio, clip-path: circle(50%) margin-box) oppure essere utilizzati da soli per ritagliare la casella specificata (ad esempio clip-path: content-box).

Valori xywh() e rect() del percorso di clip CSS

Ora Chrome supporta i valori xywh() e rect() della proprietà clip-path, che semplificano la specifica di clip rettangolari o arrotondati-rettangolari.

API web

Dal momento che per i cookie di Chrome 104 appena creati o per quelli aggiornati con una data di scadenza è stato applicato un limite di questa data non superiore a 400 giorni nel futuro. Lo stesso limite verrà ora applicato in modo retroattivo ai cookie già memorizzati. Le date di scadenza di questi cookie verranno limitate a non più di 400 giorni dopo il primo avvio di Chrome 119 e versioni successive, che ha eseguito una migrazione del database una tantum. L'impatto di questa modifica non si farà notare dagli utenti fino ad almeno 400 giorni dopo il rilascio di Chrome 119, quindi solo per i cookie esistenti che non sono stati aggiornati nel periodo di tempo in questione.

DisplayMediaStreamOptions monitorTypeSurfaces

Quando viene richiamato getDisplayMedia(), il browser offre all'utente la possibilità di scegliere tra diverse piattaforme di visualizzazione: schede, finestre o monitor. Utilizzando l'opzione monitorTypeSurfaces, l'applicazione web ora può suggerire al browser se preferisce includere piattaforme display il cui tipo è monitor tra le opzioni offerte all'utente.

Aggiornamenti alle funzionalità di Fenced Frames

Chrome 119 include i seguenti miglioramenti a Fenced Frames.

È disponibile un'opzione di formato aggiuntiva per le macro dimensioni annuncio di Protected Audience nell'API Protected Audience all'interno di Privacy Sandbox. Una funzionalità di attivazione consente di modificare in modo macro la dimensione dell'annuncio che vince l'asta nell'URL dell'annuncio, ad esempio:

https://ad.com?width={/%AD_WIDTH%}&height={/%AD_HEIGHT%}

Per garantire una maggiore coerenza con altri tipi di macro in Protected Audience, come quelli utilizzati da deprecatedReplaceInURN e registerAdMacro, in Chrome 119 aggiungeremo la possibilità di usare ${AD_WIDTH} e ${AD_HEIGHT} come formato per le macro, oltre al formato corrente.

Ora i beacon automatici verranno inviati a tutti gli URL registrati. In precedenza, solo le destinazioni specificate durante la chiamata al numero setReportEventDataForAutomaticBeacons() ricevono beacon automatici, anche se quella destinazione chiamata registerAdBeacon() per "reserved.top_navigation" nel proprio worklet. D'ora in poi, qualsiasi destinazione che ha chiamato registerAdBeacon() per "reserved.top_navigation" riceverà un beacon automatico, ma solo le destinazioni specificate in setReportEventDataForAutomaticBeacons() riceveranno dati automatici del beacon insieme al beacon. Il parametro "once" in setReportEventDataForAutomaticBeacons() determinerà se i dati verranno inviati una sola volta, anziché determinare se l'intero beacon verrà inviato una sola volta.

Margine di scorrimento incrociato osservatore

La proprietà scrollMargin dell'osservatore dell'intersezione consente agli sviluppatori di osservare i target all'interno di contenitori di scorrimento nidificati che attualmente vengono rimossi dai contenitori di scorrimento. Questo si ottiene espandendo il rettangolo di ritaglio del contenitore del scrollMargin durante il calcolo dell'intersezione.

Container di scorrimento attivabili sulla tastiera

Questa funzionalità migliora l'accessibilità rendendo i contenitori di scorrimento attivabili tramite la navigazione con stato attivo sequenziale. In precedenza, il tasto Tab non attivava gli scorrimenti a meno che tabIndex non fosse impostato esplicitamente su 0 o su un valore superiore. Se rendi attivabili gli scorrimenti per impostazione predefinita, gli utenti che non possono (o non vogliono) utilizzare il mouse saranno in grado di impostare lo stato attivo sui contenuti ritagliati utilizzando la scheda e i tasti freccia della tastiera. Questo comportamento viene attivato solo se lo scorrimento non contiene elementi secondari attivabili per la tastiera.

Limitazioni dell'accesso alla rete privata per il settore auto e motori

Applica (e non solo un avviso) le limitazioni di accesso alla rete privata su Chrome per Android Automotive (se BuildInfo::is_automotive). Sono incluse le richieste preflight di accesso privato alla rete per le risorse secondarie e l'accesso alla rete privata per i lavoratori.

Lettura degli attributi dei dispositivi Chrome

L'API Web attributi dispositivo è un sottoinsieme dell'API Managed Device Web, che offre alle applicazioni web la possibilità di eseguire query sulle informazioni del dispositivo. Ad esempio, ID dispositivo, numero di serie e posizione.

Sostituisci il markup penzolante nel nome della destinazione con _blank

Questa modifica sostituisce il nome del target navigabile (che di solito è impostato dall'attributo target) in _blank, se contiene un markup penzolante (ad esempio, \n e <). Il che corregge un'esclusione nella mitigazione dell'inserimento di markup penzolante.

Intestazione Sec-CH-Prefers-Reduced-Transparency delle funzionalità dei contenuti multimediali della preferenza di Sec-CH-Prefers-Reduced-Transparency

L'intestazione Client hint delle funzionalità multimediali delle preferenze utente definisce un insieme di intestazioni dei client hint HTTP relativi alle funzionalità multimediali delle preferenze dell'utente, come definito dal livello 5 delle query multimediali. Se utilizzate come suggerimenti critici client, queste intestazioni consentono ai server di fare scelte intelligenti riguardo, ad esempio, all'incorporamento CSS. Sec-CH-Prefers-Reduced-Transparency riflette la preferenza dell'utente (prefers-reduced-transparency) ed è disponibile a partire dalla versione 119 di Chrome.

Caratteri di punteggiatura dell'host dell'URL conforme allo standard

Rendi la gestione di Chrome dei caratteri di punteggiatura dell'host dell'URL conforme allo standard per gli URL. Ad esempio:

Prima:

> const url = new URL("http://exa(mple.com;");
> url.href
'http://exa%28mple.com/&apos;

( è un carattere vietato, ma Chrome lo consente erroneamente.

Dopo:

> const url = new URL("http://exa(mple.com;");
> => throws TypeError: Invalid URL.

Modalità velocità in bit di WebCodecs AudioEncoder

Alcuni codec audio supportano la specifica delle modalità di velocità in bit del codificatore audio. Questa funzionalità aggiunge un flag "bitrateMode" con valore predefinito "variable" a AudioEncoderConfig di WebCodec, che rispecchia l'opzione di configurazione e l'impostazione predefinita già presente per VideoEncoderConfig.

Questo flag consentirà agli sviluppatori di scegliere se codificare l'audio con una velocità in bit variabile o costante. Le implementazioni specifiche di codificatori di codec potrebbero avere una terminologia leggermente diversa (ad esempio, CBR rispetto a VBR per Opus), ma tutte dovrebbero essere mappate al concetto generale di velocità in bit "costante" e "variabile".

Le due opzioni avranno i seguenti effetti:

  • variabile. Consente a un codificatore audio di aumentare o diminuire la sua velocità in bit in base ai contenuti dell'audio che codifica, per preservare la larghezza di banda/dimensioni binarie e mantenere al contempo la qualità target. Ad esempio, un codificatore potrebbe ridurre la velocità in bit durante la codifica delle notifiche audio e riportare la velocità in bit massima durante la codifica del parlato.
  • costante. forza un codificatore audio a mantenere la stessa velocità in bit, a prescindere dai contenuti audio. Ciò può essere utile quando è preferibile un consumo di larghezza di banda prevedibile.

A partire da Chrome 119, questo flag interesserà due codec su Chromium: Opus e AAC.

Incapsulamento della chiave X25519Kyber768 per TLS

Proteggi il traffico TLS di Chrome attuale dalla futura crittoanalisi quantistica eseguendo il deployment dell'algoritmo dell'accordo chiave quantico resistente alla quantità Kyber768. Si tratta di un accordo chiave ibrido X25519 + Kyber768 basato su uno standard IETF. Questa specifica e questo lancio non rientrano nell'ambito di W3C. Questo accordo chiave verrà lanciato come crittografia TLS e dovrebbe essere trasparente per gli utenti.

Prove dell'origine in corso

In Chrome 119 puoi attivare la seguente nuova prova dell'origine.

Apri i popup come finestre a schermo intero

Questa nuova prova dell'origine aggiunge un parametro fullscreen windowFeatures all'API JavaScript window.open(). Questo permette al chiamante di aprire un popup direttamente a schermo intero sul display che contiene il popup (in base a screenX e screenY). Ciò elimina la necessità per lo sviluppatore di eseguire la transizione manuale di un popup a schermo intero, il che potrebbe richiedere un nuovo segnale di attivazione dell'utente.

Rimozioni e ritiri

Questa versione di Chrome introduce i ritiri e le rimozioni elencate di seguito. Visita il sito ChromeStatus.com per consultare gli elenchi di ritiri pianificati, ritiri in corso e rimozioni precedenti.

In questa release di Chrome vengono rimosse quattro funzionalità.

Rimuovi SQL web

In precedenza avevamo annunciato il ritiro e la rimozione di SQL web. La funzionalità è stata rimossa completamente a partire da Chrome 119. Una prova dell'origine inversa consente agli sviluppatori di continuare a utilizzare WebSQL fino a Chrome 123.

Rimuovi API Sanitizer

L'API Sanitizer mira a creare nella piattaforma un disinfettante HTML facile da usare, sempre sicuro e gestito dal browser. Chrome ha fornito una versione iniziale in Chrome 105, in base alla bozza delle specifiche al momento in vigore. Tuttavia, nel frattempo la discussione è passata e la forma dell'API proposta è cambiata sostanzialmente.

Per evitare che l'API corrente venga consolidata, rimuoveremo l'implementazione corrente. Prevediamo di implementare nuovamente l'API Sanitizer quando la specifica proposta si stabilizza di nuovo.

Rimuovi dati: URL in SVGUseElement

L'assegnazione di un data: URL in SVGUseElement può causare XSS. Questo ha comportato anche l'esclusione di TrustedType. Pertanto, prevediamo di ritirare e rimuovere il relativo supporto.

Rimuovi l'attributo shadowroot non standard per il DOM shadow dichiarativo

L'attributo standard-track shadowrootmode, che consente lo Shadow DOM dichiarativo, è stato fornito in Chrome 111. L'attributo precedente shadowroot non standard verrà rimosso in Chrome 119. Il percorso di migrazione è semplice: sostituisci shadowroot con shadowrootmode.