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.