Chrome 138

Data di rilascio della versione stabile: 24 giugno 2025

Se non diversamente indicato, le seguenti modifiche si applicano alla release del canale stabile di Chrome 138 per Android, ChromeOS, Linux, macOS e Windows.

CSS e UI

Le funzioni relative al segno abs() e sign() calcolano varie funzioni relative al segno del loro argomento.

La funzione abs(A) contiene un calcolo A e restituisce il valore assoluto di A, dello stesso tipo dell'input: se il valore numerico di A è positivo o 0⁺, restituisce A; altrimenti -1 * A.

La funzione sign(A) contiene un calcolo A e restituisce -1 se il valore numerico di A è negativo, +1 se il valore numerico di A è positivo, 0⁺ se il valore numerico di A è 0⁺ e 0⁻ se il valore numerico di A è 0⁻. Il tipo restituito è un <number>, reso coerente con il tipo di calcolo di input.

Documenti MDN:abs() | Bug di monitoraggio n. 40253181 | Voce di ChromeStatus.com | Specifica

Notazione funzionale di avanzamento dell'interpolazione: funzione CSS progress()

La notazione funzionale progress() restituisce un valore <number> che rappresenta la posizione di un calcolo (il valore di avanzamento) tra altri due calcoli (il valore iniziale e finale dell'avanzamento). La funzione progress() è una funzione matematica.

Bug di monitoraggio n. 40944203 | Voce di ChromeStatus.com | Specifica

CSS sibling-index() e sibling-count()

Le funzioni sibling-index() e sibling-count() possono essere utilizzate come numeri interi nei valori delle proprietà CSS per applicare lo stile agli elementi in base alla loro posizione tra i relativi elementi di pari livello o al numero totale di elementi di pari livello, rispettivamente. Queste funzioni possono essere utilizzate direttamente come valori interi, ma in modo più interessante all'interno delle espressioni calc().

Bug di monitoraggio n. 40282719 | Voce di ChromeStatus.com | Specifica

Parola chiave di dimensionamento CSS stretch

Una parola chiave per le proprietà di dimensionamento CSS (ad esempio width e height) che consente agli elementi di espandersi per riempire esattamente lo spazio disponibile del blocco contenitore. È simile a "100%", tranne per il fatto che la dimensione risultante viene applicata alla casella del margine dell'elemento anziché alla casella indicata da box-sizing. L'utilizzo di questa parola chiave consente all'elemento di mantenere i margini pur essendo il più grande possibile. Una versione senza prefisso di -webkit-fill-available.

Bug di monitoraggio n. 41253915 | Voce di ChromeStatus.com | Specifica

Variabile CSS env per la scala dei caratteri a livello di sistema operativo

Espone la scala dei caratteri preferita di un utente al CSS. Senza questo, non è pratico per una pagina rilevare se l'utente ha modificato le dimensioni del carattere preferite utilizzando le preferenze del sistema operativo. Questa variabile di ambiente CSS rifletterà la scala scelta dall'utente.

Bug di monitoraggio n. 397737223 | Voce di ChromeStatus.com | Specifica

Dispositivi

Web Serial tramite Bluetooth su Android

Questa funzionalità consente alle pagine web e alle app web di connettersi alle porte seriali tramite Bluetooth sui dispositivi Android.

Chrome su Android ora supporta l'API Web Serial tramite Bluetooth RFCOMM. Le policy aziendali esistenti (DefaultSerialGuardSetting, SerialAllowAllPortsForUrls, SerialAllowUsbDevicesForUrls, SerialAskForUrls e SerialBlockedForUrls) su altre piattaforme sono attivate negli stati future_on per Android. Tutti i criteri, ad eccezione di SerialAllowUsbDevicesForUrls, verranno attivati dopo l'attivazione della funzionalità. SerialAllowUsbDevicesForUrls verrà abilitato in un lancio futuro dopo che Android fornirà il supporto a livello di sistema delle porte seriali cablate.

Bug di monitoraggio n. 375245353 | Voce di ChromeStatus.com | Specifica

API Viewport Segments Enumeration

L'API Viewport Segments consente agli sviluppatori di adattare il layout web per il targeting dei dispositivi pieghevoli. I segmenti del viewport definiscono la posizione e le dimensioni di una regione logicamente separata del viewport. I segmenti del viewport vengono creati quando il viewport viene suddiviso da una o più funzionalità hardware (ad esempio una piega o una cerniera tra display separati) che fungono da divisore; i segmenti sono le regioni del viewport che possono essere trattate come logicamente distinte dallo sviluppatore.

Bug di monitoraggio n. 1039050 | Voce di ChromeStatus.com | Specifica

JavaScript

Aggiorna QuotaExceededError a un'interfaccia derivata da DOMException

In precedenza, quando la piattaforma web voleva comunicarti che avevi superato la quota, utilizzava DOMException con la proprietà name specifica impostata su QuotaExceededError. Tuttavia, questo non consente di trasportare informazioni aggiuntive.

Ciò propone di rimuovere "QuotaExceededError" dall'elenco dei nomi DOMException incorporati e di creare invece un nome di classe QuotaExceededError dall'elenco dei nomi DOMException incorporati e di includere le proprietà facoltative aggiuntive quota e requested. Proponiamo che tutte le istanze delle specifiche che generano "QuotaExceededError" DOMException vengano aggiornate in modo da generare QuotaExceededError. Per ora, queste specifiche lascerebbero le proprietà quota e requested al loro valore predefinito di null, ma potrebbero alla fine essere aggiornate per includere questi dati, se utili per il caso d'uso (e non costituiscono, ad esempio, una violazione della privacy).

Voce di ChromeStatus.com | Specifica

API web

API Translator

Un'API JavaScript per fornire funzionalità di traduzione linguistica alle pagine web. I browser offrono sempre più spesso la traduzione automatica ai propri utenti. Queste funzionalità di traduzione possono essere utili anche agli sviluppatori web. Ciò si verifica soprattutto quando le funzionalità di traduzione integrate del browser non possono essere d'aiuto. È disponibile un criterio aziendale (GenAILocalFoundationalModelSettings) per disattivare il download del modello sottostante, il che renderebbe questa API non disponibile.

Documenti MDN | Bug di monitoraggio n. 322229993 | Voce di ChromeStatus.com | Specifica

API Language Detector

Un'API JavaScript per rilevare la lingua del testo, con livelli di confidenza.

Un importante complemento della traduzione è il rilevamento della lingua. Questa operazione può essere combinata con la traduzione, ad esempio prendendo l'input dell'utente in una lingua sconosciuta e traducendolo in una lingua di destinazione specifica. I browser di oggi spesso dispongono già di funzionalità di rilevamento della lingua e vogliamo offrirle agli sviluppatori web tramite un'API JavaScript, integrando l'API Translation. È disponibile un criterio aziendale (GenAILocalFoundationalModelSettings) per disattivare il download del modello sottostante, il che renderebbe questa API non disponibile.

Documenti MDN | Voce di ChromeStatus.com | Specifica

API Summarizer

L'API Summarizer è un'API JavaScript per produrre riepiloghi del testo di input, supportata da un modello linguistico di AI. I browser e i sistemi operativi dovrebbero accedere a un modello linguistico. Se esponiamo questo modello integrato, evitiamo che ogni sito web debba scaricare il proprio modello linguistico di più gigabyte o inviare il testo di input ad API di terze parti. L'API di riepilogo in particolare espone un'API di alto livello per l'interfacciamento con un modello linguistico al fine di riepilogare gli input per una serie di casi d'uso (GitHub), in modo da non dipendere dal modello linguistico specifico in questione. È disponibile un criterio aziendale (GenAILocalFoundationalModelSettings) per disabilitare il download del modello sottostante, il che renderebbe questa API non disponibile.

MDN Docs | Tracking bug #351744634 | Voce di ChromeStatus.com | Specifica

Escape < e > negli attributi durante la serializzazione

Esegui l'escape di < e > nei valori degli attributi durante la serializzazione.

In questo modo si riduce il rischio di attacchi XSS di mutazione, che si verificano quando il valore di un attributo viene interpretato come un token di tag di inizio dopo essere stato serializzato e analizzato nuovamente.

Voce di ChromeStatus.com | Specifica

API Crash Reporting: is_top_level e visibility_state

Questa funzionalità aggiunge i campi stringa is_top_level e visibility_state al corpo dell'API di segnalazione degli arresti anomali che viene inviato all'endpoint di reporting predefinito per i report sugli arresti anomali.

Voce di ChromeStatus.com | Specifica

Attivare l'evento pushsubscriptionchange al momento del nuovo abbonamento

Attiva l'evento pushsubscriptionchange nei service worker quando viene riassegnata l'autorizzazione di notifica a un'origine per la quale esisteva un abbonamento push in passato, ma che è stato revocato a causa di una modifica dell'autorizzazione (da concessa a negata/predefinita).

L'evento verrà attivato con oldSubscription e newSubscription vuoti.

Bug di monitoraggio n. 407523313 | Voce di ChromeStatus.com | Specifica

Multimediali

Aggiungere il supporto dei metadati di orientamento dei frame video a WebCodecs

Introduce i valori rotation: int e flip: bool a varie interfacce correlate ai video in WebCodecs in modo che gli sviluppatori possano lavorare con origini frame con orientamento (ad esempio, fotocamere Android, determinati contenuti multimediali).

L'interfaccia VideoFrame aumenta la possibilità di creare VideoFrames con rotazione e inversione arbitrarie, nonché gli accessor per queste informazioni nell'oggetto VideoFrame.

L'oggetto VideoDecoderConfig acquisisce i campi di rotazione e inversione emessi automaticamente sugli oggetti VideoFrame decodificati.

La classe VideoEncoder acquisisce meccanismi per il passaggio delle informazioni di rotazione e inversione da encode() a VideoDecoderConfig emesse nell'ambito di EncodedVideoChunkMetadata. Se encode() viene chiamato con frame con orientamenti diversi, verrà generata un'eccezione non fatale. configure() può essere utilizzato per reimpostare l'orientamento consentito.

Bug di monitoraggio n. 40243431 | Voce di ChromeStatus.com | Specifica

Rendimento

Aggiungi prefetchCache e prerenderCache all'intestazione Clear-Site-Data

Due nuovi valori per l'intestazione Clear-Site-Data per aiutare gli sviluppatori a scegliere come cancellare la cache di prerendering e prefetching: "prefetchCache" e "prerenderCache".

Bug di monitoraggio n. 398149359 | Voce di ChromeStatus.com | Specifica

Regole di speculazione: campo target_hint

Estende la sintassi delle regole di speculazione per consentire agli sviluppatori di specificare il campo target_hint.

Questo campo fornisce un suggerimento per indicare una destinazione navigabile in cui verrà attivata una pagina sottoposta a prerendering. Ad esempio, quando _blank è specificato come suggerimento, una pagina sottoposta a prerendering può essere attivata per una pagina navigabile aperta da window.open(). Il campo non ha alcun effetto sul prefetching.

La specifica consente a questo campo di accettare qualsiasi stringa valida come nome o parola chiave della destinazione navigabile come valore, ma questo lancio supporta solo una delle stringhe "_self" o "_blank". Se il suggerimento non è specificato, viene trattato come se fosse specificato "_self".

Bug di monitoraggio n. 40234240 | Voce di ChromeStatus.com | Specifica

Sicurezza

Norme sull'integrità per gli script

L'integrità delle risorse secondarie (SRI) consente agli sviluppatori di assicurarsi che gli asset che intendono caricare siano effettivamente quelli che caricano. Tuttavia, al momento non esiste un modo per gli sviluppatori di assicurarsi che tutti i loro script vengano convalidati utilizzando l'integrità delle risorse secondarie.

L'intestazione Integrity-Policy consente agli sviluppatori di affermare che ogni risorsa di un determinato tipo deve essere sottoposta a controllo dell'integrità. Se si tenta di caricare una risorsa di questo tipo senza metadati di integrità, il tentativo non andrà a buon fine e verrà generato un report sulle violazioni.

Voce di ChromeStatus.com | Specifica

Service worker

Supporto di ServiceWorker per il precaricamento delle regole di speculazione

Questa funzionalità consente i precaricamenti controllati da ServiceWorker, ovvero un precaricamento delle regole di speculazione per gli URL controllati da un service worker. In precedenza, il prefetch viene annullato al rilevamento di un service worker di controllo, pertanto la navigazione successiva alla destinazione del prefetch viene gestita dal percorso non prefetch. Questa funzionalità consentirà alla richiesta di prefetch di passare attraverso l'handler di recupero del service worker e la risposta con l'intercettazione del service worker viene memorizzata nella cache di prefetch, il che comporta che una navigazione successiva venga gestita dalla cache di prefetch. Utilizza il criterio aziendale PrefetchWithServiceWorkerEnabled per controllare questa funzionalità.

Bug di monitoraggio n. 40947546 | Voce di ChromeStatus.com | Specifica

Ritiri e rimozioni

WebGPU: ritiro dell'attributo GPUAdapter isFallbackAdapter

Ritira l'attributo booleano GPUAdapter isFallbackAdapter da WebGPU, che è ridondante con l'attributo booleano GPUAdapterInfo isFallbackAdapter.

Questa rimozione imminente è una modifica che causa un problema di compatibilità minore, in quanto il supporto degli adattatori di riserva non è ancora stato implementato in nessun browser, pertanto gli attributi isFallbackAdapter restituiscono sempre un valore falso.

Bug di monitoraggio n. 409259074 | Voce di ChromeStatus.com | Specifica

Ritiro della rimozione dell'intervallo asincrono per le estensioni Media Source

Lo standard Media Source è stato modificato molto tempo fa per non consentire un comportamento definito in modo ambiguo che coinvolge rimozioni di intervalli asincroni:

  • SourceBuffer.abort() non interrompe più le operazioni SourceBuffer.remove().
  • L'impostazione MediaSource.duration non può più troncare i contenuti multimediali attualmente memorizzati nel buffer.

Ora in entrambi i casi verranno generate eccezioni.

Safari e Firefox hanno implementato questo comportamento da tempo, Chromium è l'ultimo browser rimasto con il vecchio comportamento. I contatori mostrano che circa lo 0,001%-0,005% dei caricamenti di pagina risente del comportamento deprecato. Se un sito presenta questo problema, la riproduzione potrebbe non funzionare.

L'utilizzo dell'annullamento delle rimozioni di abort() è in aumento, pertanto è prudente risolvere questo ritiro prima che venga visualizzato un utilizzo più incompatibile.

Bug di monitoraggio n. 40474569 | Voce di ChromeStatus.com | Specifica