Chrome 121 beta

Se non diversamente specificato, le seguenti modifiche si applicano all'ultima release del canale beta di Chrome per Android, ChromeOS, Linux, macOS e Windows. Scopri di più sulle funzionalità elencate qui tramite i link forniti o nell'elenco su ChromeStatus.com. Chrome 121 è in versione beta a partire dal 6 dicembre 2023. Puoi scaricare la versione più recente da Google.com per computer o dal Google Play Store per Android.

CSS

In questa versione sono state aggiunte sei nuove funzionalità CSS.

Ereditarietà delle evidenziazioni CSS

Con l'ereditarietà degli elementi in evidenza CSS, le pseudo classi di momenti salienti CSS, come ::selection e ::highlight, ereditano le proprietà tramite la catena di pseudo evidenziazione, anziché la catena di elementi. Il risultato è un modello più intuitivo per l'ereditarietà delle proprietà nelle evidenziazioni.

In questo modo viene implementato il requisito della specifica Pseudos di livello 4 di CSS:

"Quando a una proprietà supportata non viene assegnato un valore tramite la cascata ... il valore specificato viene determinato dall'ereditarietà dallo pseudo-elemento di evidenziazione corrispondente dell'elemento principale dell'elemento di origine."

Barre di scorrimento CSS: scrollbar-color e scrollbar-width

La specifica delle barre di scorrimento CSS consente agli sviluppatori di applicare uno stile alle barre di scorrimento specificandone i colori e lo spessore. Questa specifica aggiunge le due proprietà seguenti. La proprietà scrollbar-color offre la possibilità di modificare la combinazione di colori delle barre di scorrimento per adattarle meglio allo stile specifico di una pagina web. La proprietà scrollbar-width consente di utilizzare barre di scorrimento più strette che potrebbero essere più adatte per alcuni casi d'uso, o persino di nascondere completamente le barre di scorrimento senza comprometterne la scorrimento.

Animazione font-palette CSS per i caratteri colorati

La proprietà CSS font-palette consente di selezionare una tavolozza specifica utilizzata per eseguire il rendering di un carattere di colore. Con il supporto appena aggiunto per l'animazione di questa proprietà, la transizione tra le tavolozze non è più un passaggio discreto, ma diventa una transizione uniforme tra due tavolozze selezionate. Questo approccio funziona ovunque nelle animazioni e nelle transizioni CSS.

Funzionalità ortografiche e grammaticali del CSS

Il CSS evidenzia gli pseudo-elementi per assegnare uno stile al testo che lo user agent ha segnalato come con errori ortografici o grammaticalmente errati e le decorazioni di riga che espongono le decorazioni predefinite dello user agent per errori ortografici e grammaticali. Queste funzionalità consentono agli sviluppatori di scegliere colori più leggibili per gli errori ortografici e grammaticali predefiniti, di evidenziare le parole con errori ortografici con colori di sfondo o altre decorazioni e di implementare il controllo ortografico personalizzato che si integra con l'esperienza del dispositivo.

Mascheramento CSS migliorato per SVG

Questo è un seguito del supporto migliorato delle maschere CSS in Chrome 120, che aggiunge un nuovo supporto delle maschere agli SVG (più maschere, oltre a mask-mode, mask-composite, mask-position e mask-repeat). Inoltre, sono ora supportate le maschere SVG remote (ad esempio, mask: url(masks.svg#star)).

Valori di visualizzazione specifici per Ruby

Vengono aggiunti nuovi valori delle proprietà display CSS, ruby e ruby-text. I valori di visualizzazione predefiniti di <ruby> e <rt> vengono modificati rispettivamente in ruby e ruby-text e il layout ruby rispetta questi valori. Gli autori di contenuti web possono utilizzare qualsiasi elemento come <div> per eseguire il rendering di ruby impostando i nuovi valori di visualizzazione.

API web

Pacchetto di funzionalità di Attribution Reporting: ritardi aggregati ridotti, campo Epsilon report a livello di evento, chiavi riservate

Chrome include modifiche all'API Attribution Reporting incentrate su:

  • Riduzione della perdita di trasmissione grazie al supporto di minori ritardi per i report aggregati.
  • Configurabilità aggiuntiva dell'API mediante il supporto di un campo epsilon di reporting a livello di evento.
  • È stata migliorata l'estensibilità dell'API in quanto non è possibile eseguire le registrazioni quando si incontrano chiavi riservate.

API notRemovedReason della cache back-forward

L'APInotRecoverydReason riporta l'elenco dei motivi per cui una pagina non viene pubblicata dalla cache back-forward utilizzando l'API Performance NavigationTiming.

Richiedi un gesto dell'utente per le API di ridimensionamento nella funzionalità Picture in picture del documento

In questo modo vengono attivati i metodi resizeBy() e resizeTo() nelle finestre Picture in picture del documento, ma con l'ulteriore limitazione di un requisito relativo ai gesti dell'utente per mitigare il potenziale di comportamenti illeciti.

API EditContext

L'API EditContext semplifica il processo di integrazione di un'app web con metodi avanzati di immissione testo come scrittura VK di forma, pannelli di scrittura a mano libera, riconoscimento vocale e composizioni IME. Migliora l'accessibilità e le prestazioni e sblocca nuove funzionalità per gli editor basati sul web.

Rilevamento delle funzionalità per i formati di appunti supportati

Ora puoi verificare se l'API Async Clipboard supporta un determinato tipo MIME chiamando la nuova funzione supports() e passando il tipo MIME come argomento, ad esempio ClipboardItem.supports('image/png').

HTMLSelectElement showPicker()

Il metodo showPicker() di HTMLSelectElement offre agli sviluppatori un modo per aprire in modo programmatico il selettore di opzioni di un elemento <select>, seguendo il pattern di input.showPicker().

MediaCapabilities: esegui query sul supporto HDR con decodingInfo()

Estende l'API Media Capabilities per consentire il rilevamento del supporto del rendering HDR tramite tre nuovi campi del dizionario VideoConfiguration: hdrMetadataType, colorGamut e TransferFunction.

Chromium implementa i propri algoritmi di mappatura tonale, quindi restituirà sempre true per i metadati statici HDR10 (smpteSt2086). I metadati dinamici smpteSt2094-40 (HDR10+) e smpteSt2094-10 non sono attualmente supportati, quindi restituiranno false.

API Private Aggregation: selezione del coordinatore di aggregazione

Questa modifica all'API Private Aggregation fornisce un meccanismo per selezionare il coordinatore da utilizzare per la crittografia del payload (da una lista consentita specificata dal fornitore). La scelta del servizio viene effettuata con un'opzione aggiuntiva nelle chiamate run() e selectURL() dell'archiviazione condivisa, nonché nelle chiamate runAdAuction() e joinAdInterestGroup() di Protected Audience. L'approccio ampio è in gran parte in linea con quello dell'API Attribution Reporting.

API Remote Riproduzione su computer

Questa API estende HTMLMediaElement, che consente di controllare la riproduzione remota dei contenuti multimediali da una pagina web. Questa versione viene fornita su Android con Chrome 56 ed è disponibile su computer a partire da Chrome 121.

API Speculation Rules

L'API Speculation Rules offre nuove funzionalità.

Supporto delle regole per i documenti: si tratta di un'estensione della sintassi delle regole di speculazione che consente al browser di ottenere l'elenco di URL per il caricamento speculativo dagli elementi <a> in una pagina. Possono includere criteri per l'utilizzo di questi link. Questo, insieme a un nuovo campo "eagerness" per le regole di speculazione, consente agli sviluppatori di precaricare automaticamente o eseguire il prerendering dei link nelle pagine immediatamente, al passaggio del mouse o al mousedown.

Una modifica separata consente di specificare regole di speculazione utilizzando l'intestazione della risposta HTTP Speculation-Rules in alternativa all'utilizzo di elementi <script> incorporati. Il valore di questa intestazione deve essere un URL che rimanda a una risorsa di testo con tipo MIME "application/speculationrules+json". Le regole della risorsa verranno aggiunte alla serie di regole del documento.

Infine, il suggerimento No-Vary-Search consente la corrispondenza dei precaricamenti speculativi anche se i parametri di query dell'URL cambiano. L'intestazione della risposta HTTP No-Vary-Search dichiara che è possibile ignorare alcune o tutte le parti della query di un URL ai fini della corrispondenza. Può dichiarare che l'ordine delle chiavi dei parametri di query non deve impedire le corrispondenze, che parametri di query specifici non devono impedire le corrispondenze o che solo alcuni parametri di query noti dovrebbero causare mancate corrispondenze.

Oggetti dell'interfaccia SpeechSynthesis e SpeechSynthesisVoice

Aggiunge gli oggetti dell'interfaccia per SpeechSynthesis e SpeechSynthesisVoice alle funzionalità già supportate. Ciò rende possibile il rilevamento delle funzionalità tramite SpeechSynthesisVoice.prototype.

API Storage Buckets

I bucket di archiviazione consentono ai siti di organizzare i dati sul dispositivo in "bucket separati", consentendo agli user agent di rimuovere i dati raggruppati indipendentemente da quelli che si trovano in altri bucket e ai siti di gestire in modo ergonomico i dati correlati alla semantica. Ogni bucket di archiviazione può contenere dati associati ad API di archiviazione consolidate, come IndexedDB e CacheStorage.

Pattern URL: eredita a sinistra, carattere jolly a destra

Il comportamento cambia rispetto ai pattern creati utilizzando un URL di base, la sintassi della stringa del costruttore o entrambe, ma non i pattern che specifichino esplicitamente i componenti separatamente senza un URL di base.

I componenti non vengono ereditati da un URL di base se viene specificato esplicitamente un componente "precedente". Nel formato stringa, i componenti "successivi" non specificati sono implicitamente con caratteri jolly, anziché essere vuoti (ad eccezione della porta, che viene sempre considerata quando è presente il nome host). Il nome utente e la password non vengono mai specificati o ereditati in modo implicito.

Ciò rende i pattern più estesi rispetto a prima, nei casi in cui è probabile che i caratteri jolly siano desiderabili.

Pattern URL: flag Espressione regolare v anziché u

L'API Pattern URL consente agli sviluppatori di specificare stringhe pattern. che vengono trasformate internamente in espressioni regolari.

Quando l'API è stata implementata per la prima volta, queste espressioni regolari sono state compilate con il flag u. Chrome 121 lo aggiorna al flag v, abilitando i set Unicode.

Aggiunte a WebGPU

WebGPU ora consente agli sviluppatori di omettere i punti di ingresso ai moduli Shadr durante la creazione di una pipeline, migliorando l'ergonomia. Se non viene trovato alcun punto di ingresso predefinito, viene attivato un errore GPUValidationError, come di consueto.

Le query timestamp WebGPU consentono alle applicazioni WebGPU di misurare con precisione (fino al nanosecondo) il tempo impiegato dai comandi GPU per l'esecuzione, soprattutto all'inizio e alla fine dei passaggi. Le query di timestamp sono molto utilizzate per ottenere insight sulle prestazioni e sul comportamento dei carichi di lavoro della GPU.

Mentre la specifica WebGPU rende le query di timestamp una funzionalità facoltativa a causa di problemi di tempistica degli attacchi, riteniamo che la quantizzazione delle query dei timestamp fornisca una buona via di mezzo, riducendo la precisione dei timer con una risoluzione di 100 microsecondi.

Incapsulamento della chiave X25519Kyber768 per TLS

Proteggi l'attuale traffico TLS di Chrome dalla futura crittoanalisi quantistica eseguendo il deployment dell'algoritmo di accordo chiave quantico Kyber768 resistente. Questo è un accordo chiave ibrido X25519 + Kyber768 basato su uno standard IETF. Questa specifica e il 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 121 puoi attivare le seguenti nuove prove delle origini.

API Element Capture

L'API Element Capture fornisce i metodi per acquisire un sottoalbero del DOM.

Dato un video MediaStreamTrack ottenuto tramite mezzi preesistenti per l'avvio dell'acquisizione di schede, l'acquisizione di elementi consente di modificare la traccia in modo da acquisire solo un sottoalbero del DOM a partire da un determinato elemento.

L'API ha alcune somiglianze con l'API Region Capture, ma offre una maggiore flessibilità per le applicazioni, poiché il contenuto occlusivo e quello nascosto sono entrambi esclusi dall'acquisizione.

Registrati alla prova dell'origine di Element Capture

Modifiche al comportamento esistente

Chrome 121 include la modifica al comportamento esistente che segue, inclusa qui, per consentire agli sviluppatori di essere a conoscenza di tale cambiamento .

Ignora gli eventi di input negli iframe multiorigine spostati di recente

Se un iframe multiorigine è stato spostato di recente all'interno della sua pagina di incorporamento, Chrome ignora gli eventi che hanno come target l'iframe. La motivazione è che, se l'iframe è stato spostato di recente, è probabile che l'utente non intendesse fare clic o toccarlo.

Questa modifica è stata introdotta in forma limitata nel 2019: interessava solo gli iframe contenenti script che utilizzavano le funzionalità della versione 2 di IntersectionObservationr (rilevamento di occlusioni o effetti). Questo lancio estende questo comportamento a tutti gli iframe multiorigine e inizierà come esperimento limitato in Chrome 121, dopodiché verrà esteso.