Chrome 140 beta

Data di pubblicazione: 6 agosto 2025

Se non diversamente indicato, le seguenti modifiche si applicano alla versione 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 140 è in versione beta a partire dal 6 agosto 2025. Puoi scaricare l'ultima versione dal sito web ufficiale di Chrome per computer o dal Google Play Store su Android.

CSS e UI

Aritmetica tipizzata CSS

L'aritmetica digitata consente di scrivere espressioni in CSS come calc(10em / 1px) o calc(20% / 0.5em * 1px). Ciò è utile, ad esempio, nella tipografia, in quanto consente di convertire un valore digitato in uno non digitato e riutilizzarlo per le proprietà che accettano numeri. Un altro caso d'uso è moltiplicare il valore senza unità per un altro tipo. Ad esempio, puoi eseguire il cast da pixel a gradi.

Proprietà scroll-target-group

La proprietà scroll-target-group specifica se l'elemento è un contenitore di gruppo di indicatori di scorrimento. Accetta uno dei seguenti valori:

  • "none": l'elemento non stabilisce un contenitore del gruppo di indicatori di scorrimento.
  • "auto": l'elemento stabilisce un contenitore del gruppo di indicatori di scorrimento che forma un gruppo di indicatori di scorrimento contenente tutti gli elementi dell'indicatore di scorrimento per i quali questo è il contenitore del gruppo di indicatori di scorrimento antenato più vicino.

La creazione di un contenitore di gruppi di indicatori di scorrimento consente a qualsiasi elemento HTML di ancoraggio con un identificatore di frammento all'interno di un contenitore di questo tipo di essere l'equivalente HTML degli pseudo-elementi ::scroll-marker. L'elemento di ancoraggio il cui target di scorrimento è attualmente in visualizzazione può essere stilizzato utilizzando la pseudo-classe :target-current.

Attiva counter() e counters() nel testo alternativo della proprietà content

Questa funzionalità aggiunge la possibilità di utilizzare counter() e counters() nel testo alternativo della proprietà content. In questo modo vengono fornite informazioni più significative per migliorare l'accessibilità.

Le pseudo-transizioni ereditano più proprietà di animazione

Lo pseudo albero di transizione della visualizzazione ora eredita una serie di proprietà di animazione:

  • animation-delay
  • animation-timing-function
  • animation-iteration-count
  • animation-direction
  • animation-play-state

Abilitare le transizioni di visualizzazione nidificate

Questa funzionalità consente alle transizioni di visualizzazione di generare un albero di pseudo-elementi nidificati anziché uno piatto. In questo modo, la transizione della visualizzazione appare più in linea con gli elementi originali e l'intento visivo. Consente il ritaglio, le trasformazioni 3D nidificate e l'applicazione corretta di effetti come opacità, mascheratura e filtri.

Propaga l'area visibile overscroll-behavior dalla radice

Questa modifica propaga overscroll-behavior dalla radice anziché dal corpo. Il gruppo di lavoro CSS ha deciso di non propagare le proprietà da <body> alla finestra. Le proprietà del riquadro vengono invece propagate dall'elemento radice (<html>). Pertanto, overscroll-behavior deve propagarsi dall'elemento radice. Tuttavia, Chrome ha un problema di lunga data: propaga overscroll-behavior dalla <body> anziché dalla radice. Questo comportamento non è interoperabile con altri browser. Questa modifica rende Chrome conforme alla specifica e interoperabile con altre implementazioni.

ScrollIntoView opzione contenitore

L'opzione del contenitore ScrollIntoViewOptions consente agli sviluppatori di eseguire un'operazione scrollIntoView che scorre solo il contenitore di scorrimento principale più vicino. Ad esempio, il seguente snippet scorre solo il contenitore di scorrimento di target per visualizzare target, ma non scorre tutti i contenitori di scorrimento fino alla finestra.

target.scrollIntoView({container: 'nearest'});

Aggiungi la proprietà CSS caret-animation

Chromium supporta l'animazione della proprietà caret-color. Tuttavia, quando è animato, il comportamento di lampeggio predefinito del cursore interferisce con l'animazione.

La proprietà CSS caret-animation ha due valori possibili: auto e manual. auto indica il valore predefinito del browser (lampeggiante), mentre manual indica che lo sviluppatore controlla l'animazione del cursore del testo. Inoltre, gli utenti che sono disturbati o hanno reazioni avverse a immagini lampeggianti possono disattivare il lampeggio con un foglio di stile utente.

L'API highlightsFromPoint

L'API highlightsFromPoint consente agli sviluppatori di interagire con i momenti salienti personalizzati. Rileva quali evidenziazioni esistono in un punto specifico di un documento. Questa interattività è utile per le funzionalità web complesse in cui più evidenziazioni possono sovrapporsi o esistere all'interno del DOM ombra. Fornendo un rilevamento preciso dei punti salienti basato su punti, l'API consente agli sviluppatori di gestire in modo più efficace le interazioni dinamiche con i punti salienti personalizzati. Ad esempio, gli sviluppatori possono rispondere ai clic o agli eventi di passaggio del mouse degli utenti nelle regioni evidenziate per attivare descrizioni comando personalizzate, menu contestuali o altre funzionalità interattive.

Modificare la tempistica della promessa di completamento della transizione della visualizzazione

La tempistica attuale della promessa completata si verifica all'interno dei passaggi del ciclo di vita del rendering. Ciò significa che il codice eseguito in seguito alla risoluzione della promessa viene eseguito dopo la produzione del frame visivo che rimuove la transizione di visualizzazione. Ciò può causare uno sfarfallio alla fine dell'animazione se lo script sposta gli stili per preservare uno stato visivamente simile. Questa modifica risolve il problema spostando i passaggi di pulizia di ViewTransition per l'esecuzione asincrona al termine del ciclo di vita.

Aggiungi l'attributo sorgente ToggleEvent

L'attributo source di un ToggleEvent contiene l'elemento che ha attivato l'attivazione di ToggleEvent, se applicabile. Ad esempio, se un utente fa clic su un elemento <button> con l'attributo popovertarget o commandfor impostato per aprire un popover, l'evento ToggleEvent attivato sul popover avrà l'attributo source impostato sull'elemento <button> che lo richiama.

Impedisci che l'elemento SVG foreignObject contamini il canvas per gli URL blob

Tutti i browser supportano da tempo l'utilizzo di un elemento <img> con un'origine SVG in un canvas HTML drawImage. Tuttavia, il comportamento di contaminazione della tela varia a seconda delle piattaforme. Tutti i browser contaminano il canvas quando l'origine SVG include un tag foreignObject e viene fatto riferimento con un URI HTTP. Quando viene fatto riferimento allo stesso SVG tramite un URI dati, tutti i browser non contaminano il canvas. Tuttavia, quando viene utilizzato un URI blob, sia Chromium (prima di questa modifica) sia WebKit contaminano il canvas, ma Gecko no. Quando questa funzionalità viene rilasciata, il comportamento di Chromium corrisponde a quello di Gecko, consentendo l'utilizzo di una gamma più ampia di contenuti SVG nelle chiamate canvas drawImage senza contaminazione.

Supportare il descrittore font-variation-settings in @font-face rule

I CSS consentono agli sviluppatori di regolare il peso, la larghezza, l'inclinazione e altri assi di un carattere utilizzando la proprietà font-variation-settings sui singoli elementi. Tuttavia, i browser basati su Chromium non supportano questa proprietà all'interno delle dichiarazioni @font-face. Questa funzionalità supporta la sintassi basata su stringhe per font-variation-settings come definito in CSS Fonts Level 4. I tag delle funzionalità non validi o non riconosciuti vengono ignorati in base alla specifica. Non sono supportati moduli binari o non standard. I caratteri variabili stanno diventando sempre più diffusi sia per le prestazioni che per la flessibilità tipografica. L'aggiunta del supporto per questo descrittore in Chromium migliora il controllo, riduce la ripetizione e supporta un approccio più scalabile e moderno alla tipografia web.

API web

Converti Uint8Array in base64 e esadecimale e viceversa

Base64 è un modo comune per rappresentare dati binari arbitrari come ASCII. JavaScript ha Uint8Arrays per i dati binari. Tuttavia, non dispone di un meccanismo integrato per codificare i dati in base64 o per prendere i dati base64 e produrre un Uint8Array corrispondente. Questa funzionalità aggiunge la possibilità e i metodi per la conversione tra stringhe esadecimali e Uint8Arrays.

Utilizzare l'opzione ReadableStreamBYOBReader min

Questa funzionalità introduce un'opzione min al metodo ReadableStreamBYOBReader.read(view) esistente. Il metodo accetta già un ArrayBufferView in cui legge i dati, ma attualmente non garantisce il numero di elementi scritti prima che la lettura venga risolta. Se specifichi un valore min, puoi richiedere che lo stream attenda che siano disponibili almeno quel numero di elementi prima di risolvere la lettura. In questo modo, si migliora il comportamento attuale, in cui le letture possono essere risolte con un numero inferiore di elementi rispetto a quelli che la visualizzazione può contenere.

In alcuni casi, è importante distinguere sul lato server tra i cookie impostati dal server e quelli impostati dal client. Un caso di questo tipo riguarda i cookie normalmente sempre impostati dal server. Tuttavia, un codice imprevisto (ad esempio un exploit XSS, un'estensione dannosa o un commit di uno sviluppatore confuso) potrebbe impostarli sul client. Questa proposta aggiunge un segnale che consente ai server di fare questa distinzione. Più nello specifico, definisce i prefissi __Http e __HostHttp, che garantiscono che un cookie non venga impostato sul lato client utilizzando lo script.

Limitazioni di accesso alla rete locale

Chrome 140 limita la possibilità di effettuare richieste alla rete locale dell'utente, richiedendo un prompt di autorizzazione. Una richiesta di rete locale è qualsiasi richiesta da un sito web pubblico a un indirizzo IP locale o loopback oppure da un sito web locale (ad esempio, una intranet) a loopback. Subordinare la possibilità dei siti web di eseguire queste richieste a un'autorizzazione mitiga il rischio di attacchi di tipo richiesta cross-site forgery contro i dispositivi di rete locale, come i router. Inoltre, riduce la possibilità dei siti di utilizzare queste richieste per identificare la rete locale dell'utente. Questa autorizzazione è limitata ai contesti sicuri. Se concessa, l'autorizzazione allenta anche il blocco dei contenuti misti per le richieste di rete locale, poiché molti dispositivi locali non possono ottenere certificati TLS pubblicamente attendibili per vari motivi.

Scopri di più in Nuova richiesta di autorizzazione per l'accesso alla rete locale.

Consenti agli script SharedWorker di ereditare il controller per gli URL degli script blob

La specifica indica che i worker devono ereditare i controller per l'URL blob. Tuttavia, il codice esistente consente solo ai worker dedicati di ereditare il controller, mentre i worker condivisi non lo fanno. In questo modo, il comportamento di Chrome viene corretto in modo da essere in linea con la specifica. Questa funzionalità è controllata dalla policy aziendale SharedWorkerBlobURLFixEnabled.

Aggiungi ServiceWorkerStaticRouterTimingInfo

Questa funzionalità aggiunge informazioni sui tempi per l'API di routing statico di ServiceWorker, esposta nell'API Navigation Timing e nell'API Resource Timing per l'utilizzo da parte degli sviluppatori. ServiceWorker fornisce informazioni sul timing per contrassegnare determinati momenti.

Questa funzionalità aggiunge due informazioni temporali pertinenti per l'API Static Routing:

  • RouterEvaluationStart: Ora di inizio della corrispondenza tra una richiesta e le regole del router registrate.
  • CacheLookupStart: Ora di inizio della ricerca nell'archivio della cache se l'origine è "cache".

Inoltre, questa funzionalità aggiunge due informazioni sull'origine del router: l'origine del router corrispondente e l'origine del router finale.

Attiva la creazione condizionale dell'autenticazione web su Android (non in produzione)

App web isolate

Introduzione dell'API Controlled Frame

Questa funzionalità aggiunge un'API Controlled Frame disponibile solo per le app web isolate (IWA). Come le API con nomi simili su altre piattaforme, Controlled Frame consente di incorporare tutti i contenuti, anche i contenuti di terze parti che non possono essere incorporati in <iframe>. Controlled Frame consente inoltre di controllare i contenuti incorporati con una raccolta di metodi ed eventi API. Per saperne di più sulle app web isolate, consulta la spiegazione delle app web isolate.

Nuove prove dell'origine

In Chrome 140 puoi attivare le seguenti nuove prove dell'origine.

Aggiungi l'evento clipboardchange

L'evento clipboardchange viene attivato ogni volta che un'app web o qualsiasi altra applicazione di sistema modifica i contenuti degli appunti di sistema. In questo modo, le app web come i client di desktop remoto possono mantenere sincronizzati i propri appunti con gli appunti di sistema. Fornisce un'alternativa efficiente al polling degli appunti con JavaScript per le modifiche.

Attivare le notifiche delle chiamate in arrivo

Questa funzionalità estende l'API Notifications per consentire alle PWA installate di inviare notifiche di chiamata in arrivo, ovvero notifiche con pulsanti in stile chiamata e una suoneria. Questa estensione aiuta le app web VoIP a creare esperienze più coinvolgenti, rendendo più facile per gli utenti riconoscere e rispondere alle notifiche di chiamata. Inoltre, questa funzionalità contribuisce a colmare il divario tra le implementazioni native e web delle app che le hanno entrambe.

Introduzione dell'API coppia chiave-valore per i report sugli arresti anomali

Questa funzionalità introduce una nuova API coppia chiave-valore, provvisoriamente window.crashReport, supportata da una mappa per documento che contiene i dati aggiunti ai report sugli arresti anomali.

I dati inseriti nella mappa di supporto di questa API vengono inviati in CrashReportBody se si verificano arresti anomali del processo di rendering sul sito. In questo modo, gli sviluppatori possono eseguire il debug dello stato specifico dell'applicazione che potrebbe causare un determinato arresto anomalo.

Deprecazioni e rimozioni

Questa versione di Chrome introduce i ritiri e le rimozioni elencati di seguito. Visita ChromeStatus.com per visualizzare gli elenchi di deprecazioni pianificate, deprecazioni attuali e rimozioni precedenti.

Questa release di Chrome ritira una funzionalità.

Ritiro delle regole delle dimensioni dei caratteri speciali per <h1> all'interno di alcuni elementi

La specifica HTML contiene un elenco di regole speciali per i tag <h1> nidificati all'interno degli elementi <article>, <aside>, <nav> o <section>.

Queste regole speciali sono deprecate perché causano problemi di accessibilità. In particolare, riducono visivamente le dimensioni del carattere per i <h1> nidificati in modo che assomiglino ai <h2>, ma nulla nell'albero di accessibilità riflette questa modifica visiva.