Chrome 122 beta

Se non diversamente indicato, le seguenti modifiche si applicano alla versione più recente di Chrome Beta di rilascio del canale per Android, ChromeOS, Linux, macOS e Windows. Scopri di più sulle funzionalità elencate qui tramite i link forniti o nell'elenco ChromeStatus.com. Chrome 122 è in versione beta a partire dal 24 gennaio 2024. Puoi scaricare le ultime novità su Google.com per computer sul Google Play Store su Android.

CSS

In questa release sono state aggiunte tre nuove funzionalità CSS.

Le query CSS @container con funzionalità non supportate non corrispondono mai

I selettori di @container che contengono query non supportate non selezioneranno mai alcuna query i container, il che significa che non corrisponderanno mai.

Ciò significa che questa query non corrisponderà mai a nessun container, anche se è presente una che corrisponda alla query sulla larghezza. Ad esempio, la seguente query non corrisponderà mai a causa della funzionalità sconosciuta:

@container (width > 0px) or (unknown) {}

Si tratta di una modifica recente alla specifica al fine di evitare la compatibilità in avanti che le applicazioni presentino problemi di prestazioni.

Pseudo-elemento CSS ::backdrop che eredisce dall'elemento di origine

Lo pseudo-elemento ::backdrop utilizzato per ereditare i valori iniziali. Ciò significava ::backdrop non ha potuto utilizzare i valori delle proprietà personalizzate a meno che non sia specificato direttamente su la regola ::backdrop. La specifica è stata modificata in modo che ::backdrop eredita dall'elemento di origine, questa modifica rende Chrome implementazione corrisponda alla nuova specifica.

Condizioni supports() CSS per @import

@import ora accetta una condizione supports(). Se la condizione supports() non corrisponde, l'importazione non verrà recuperata.

@import "scroll-driven-animations.css" supports(animation-timeline: auto);

Le query di funzionalità da inserire all'interno di supports() sono le stesse utilizzate con @supports

API web

API Async Clipboard: lettura di HTML non convalidato

Aggiunge un unsanitized nel metodo read() per ottenere un formato HTML non convalidato. A meno che i siti includi questa proprietà, la lettura dagli appunti verrà sanificata.

Per impostazione predefinita, quando leggi i tipi MIME text/html utilizzando l'API asincrona, il parametro sanitizer viene richiamato per rimuovere i contenuti dal markup HTML per motivi di sicurezza problemi e stili sono incorporati nel codice HTML. Questo porta a un grande payload HTML e perdita della fedeltà dei contenuti HTML quando vengono letti da sviluppatori web o app mobile.

Non eliminare gli oggetti di tipo file in dataTransfer.clearData()

Aggiorna Chrome in modo che corrisponda spec, che specifica che clearData() non influisce sugli oggetti File. Elimina solo gli oggetti di tipo text.

FedCM: scollega

Consente di disconnettere un account di accesso federato utilizzando il sito web del componente. Con l'API Disconnetti, una parte coinvolta può informare il provider di identità che un l'account utilizzato in precedenza è ora disconnesso, pertanto verrà utilizzato di nuovo con l'accesso federato sarebbe necessario trattarlo come un nuovo account.

Annullamento evento mouse-down interoperabile in iframe

Rendi i target degli eventi del mouse indipendenti dall'annullamento dell'evento mousedown quando il puntatore viene trascinato fuori da un iframe. Quando il mouse viene trascinato fuori da un iframe, tutti i browser (incluso Chrome) inviano mousemove e mouseup eventi al iframe. Tuttavia, se l'evento mousedown viene annullato, Chrome mantiene oggi un precedente eccezione WebKit secondo cui gli eventi mousemove e mouseup vengono inviati all'istanza frame. WebKit ha rimosso questa eccezione l'anno scorso e Mozilla non lo ha mai mostrato degli ultimi anni. Questa funzione rimuoverà l'eccezione solo per Chrome per questo caso speciale.

Supporti per iteratori

Gli aiutanti di iteratore sono nuovi metodi sul prototipo degli iteratori per consentire l'uso generale e il consumo degli iteratori.

MessagePort.onclose

Una modifica all'API Channel Messaging, che notifica una delle porte MessagePort che l'altra porta è stata disordinata. In altre parole, si chiama close() o se la porta è in garbage collection.

Estensioni RTCRtpSender setParameters() per richiedere la generazione di un frame chiave

Aggiunge un secondo parametro facoltativo alla chiamata RTCRtpSender.setParameters di WebRTC che può essere utilizzato per chiedere all'encoder associato di generare un frame chiave.

Imposta metodi

I metodi di impostazione sono nuovi metodi come unione e intersezione aggiunti a JavaScript classe Set integrata.

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 gruppi di dati indipendentemente da quelli presenti in altri bucket e abilitare i siti per gestire ergonomicamente i dati semanticamente correlati. Ciascun bucket Storage può contenere dati associati ad API di archiviazione consolidate come IndexedDB e CacheStorage).

Pattern URL: hasRegExpGroups

Consente di verificare se un elemento URLPattern utilizza uno o più standard ECMAScript di gruppi di espressioni, per cui potrebbero non essere adatti ai casi in cui Il motore ECMAScript non è disponibile (ad esempio, alcune API pianificate future). In sostanza, ciò riflette ciò che gli sviluppatori potrebbero comunque sapere da il pattern, ma avere accesso all'implementazione di UA controllo rende questo processo più semplice.

Archiviazione buffer di disegno WebGL

WebGL consente di eseguire il rendering nelle texture e nel buffer di rendering di molti pixel diversi formati. Ad esempio, 8 bit, rappresentazione in virgola mobile e codifica sRGB.

Il buffer di disegno di WebGL (il buffer passato al compositore) 8 bit per impostazione predefinita. La funzione disegnoBufferStorage consente a WebGL di configurare il pixel di questo buffer di disegno, che consente agli sviluppatori di eseguire le operazioni indicate di seguito.

  • Per evitare una copia aggiuntiva durante la conversione del rendering nel disegno predefinito formato buffer-pixel.
  • Traccia contenuti con più di 8 bit di precisione.

Quest'ultima funzionalità sblocca diverse applicazioni aggiuntive:

  • Contenuti con una gamma di colori molto ampia senza perdita di precisione.
  • Applicazioni mediche che richiedono una precisione superiore a 8 bit.
  • Applicazioni High Dynamic Range (se disponibili).

Incapsulamento della chiave X25519Kyber768 per TLS

Proteggi il traffico TLS di Chrome attuale dalla futura crittoanalisi quantistica tramite il deployment dell'algoritmo di accordo chiave resistente ai quantistici Kyber768. Si tratta di un Accordo chiave ibrido X25519 + Kyber768 basato su uno standard IETF. Questo la specifica e il lancio non rientrano nell'ambito di W3C. Questo contratto chiave sarà è stato avviato come cifrario TLS e deve essere trasparente per gli utenti.

Prove dell'origine in corso

In Chrome 122 puoi attivare la seguente nuova origine Google Cloud.

Estensioni di ambito delle app web

L'ambito dell'app web (definito dal campo dell'ambito) può essere definito solo con un percorso da un'unica origine. Viene utilizzato per stabilire se la finestra di un'app è corrente del documento fa parte dell'app. Determina inoltre quali URL sono consentiti in e gli altri membri del file manifest.

Con scope_extensions, gli sviluppatori possono ampliare i comportamenti dell'app per includere altre origini, se presenti accordo tra l'origine principale di un'app web e le origini associate.

Registrati alla prova dell'origine delle estensioni di ambito per app web

Superficie acquisita

L'API Captured Surface Control consente alle applicazioni web di produrre eventi Wheel in una scheda o finestra acquisita e di leggere o scrivere il livello di zoom di una scheda acquisita.

Registrati alla prova dell'origine di Captured Surface Control.