Chrome 140

Data di rilascio della versione stabile: 2 settembre 2025

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

CSS

Aritmetica tipizzata CSS

L'aritmetica tipizzata ti 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, ora puoi eseguire il cast da pixel a gradi.

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

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) e manual indica che lo sviluppatore controlla l'animazione del cursore. Inoltre, gli utenti che sono disturbati o hanno reazioni avverse a immagini lampeggianti possono disattivare il lampeggio con un foglio di stile utente.

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

highlightsFromPoint API

L'API highlightsFromPoint consente agli sviluppatori di interagire con i momenti salienti personalizzati. Rileva le evidenziazioni esistenti 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 di shadow DOM. 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 su regioni evidenziate per attivare descrizioni comando personalizzate, menu contestuali o altre funzionalità interattive.

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

Opzione container ScrollIntoView

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 portare target in visualizzazione, ma non scorre tutti i contenitori di scorrimento fino alla visualizzazione:

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

Voce di ChromeStatus.com | Specifica

Visualizza transizioni: ereditare più proprietà di animazione

Aggiunge altre proprietà di animazione da ereditare tramite lo pseudoalbero di transizione della visualizzazione:

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

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

Le pseudo-transizioni di visualizzazione ereditano animation-delay.

Oltre all'aggiornamento precedente, la proprietà animation-delay viene ora ereditata tramite lo pseudo albero della transizione di visualizzazione.

Voce di ChromeStatus.com | Specifica

Gruppi di transizioni di visualizzazione nidificati

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.

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

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.

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

CSS 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à.

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

Proprietà CSS scroll-target-group

La proprietà scroll-target-group specifica se l'elemento è un contenitore di un 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 di indicatori 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.

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

Supporto del descrittore font-variation-settings nella regola @font-face

Il CSS consente 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 alle specifiche. Non sono supportati moduli binari o non standard. I caratteri variabili vengono adottati sempre più spesso 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.

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

DOM

Attributo origine 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'ToggleEvent attivato sul popover avrà l'attributo origine impostato sull'<button> di chiamata.

Voce di ChromeStatus.com | Specifica

App web isolate (IWA)

API Controlled Frame (disponibile solo per le IWA)

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 quelli 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.

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

JavaScript

Uint8Array da e verso Base64 ed esadecimale

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 come 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.

Voce di ChromeStatus.com | Specifica

Visualizzare la modifica della tempistica della promessa di completamento della transizione

L'attuale tempistica della promessa completata si verifica durante i 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 eseguendo i passaggi di pulizia della transizione della visualizzazione in modo asincrono dopo il completamento del ciclo di vita.

Bug di monitoraggio n. 430018991 | Voce di ChromeStatus.com

API web

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 della risoluzione della lettura. Se specifichi un valore min, puoi richiedere che lo stream attenda che siano disponibili almeno tanti elementi prima di risolvere la lettura. Questo migliora il comportamento attuale, in cui le letture possono essere risolte con meno elementi di quelli che la visualizzazione può contenere.

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

L'API Get Installed Related Apps (navigator.getInstalledRelatedApps) fornisce ai siti l'accesso per verificare se le applicazioni correlate corrispondenti sono installate. I siti sono autorizzati a utilizzare questa API solo se l'applicazione ha un'associazione stabilita con l'origine web.

L'API è stata lanciata in Chrome 80 per Android. In Chrome 140 è stato attivato il supporto aggiuntivo per le app web sul computer.

Documenti | Bug di monitoraggio n. 895854 | Voce di ChromeStatus.com | Specifica

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, 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.

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

Service worker

Lo script SharedWorker eredita il controller per l'URL dello 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. Il criterio aziendale SharedWorkerBlobURLFixEnabled controlla questa funzionalità.

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

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 punti nel tempo.

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

  • RouterEvaluationStart: è il momento di iniziare ad abbinare una richiesta alle regole del router registrate.
  • CacheLookupStart: Ora di inizio della ricerca dell'archiviazione 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.

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

Prove dell'origine

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.

Origin Trial | Tracking bug #detail?id=1383570 | Voce di ChromeStatus.com | Specifica

API chiave-valore di Crash Reporting

Questa funzionalità introduce una nuova API 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.

Prova dell'origine | Bug di monitoraggio n. 400432195 | Voce di ChromeStatus.com | Specifica

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.

Prova dell'origine | Bug di monitoraggio n. 41442253 | Voce di ChromeStatus.com | Specifica

Attivare SharedWorker su Android

La richiesta di supporto di SharedWorker su Android deriva da diverse esigenze espresse dagli sviluppatori web:

  • Condivisione ed efficienza delle risorse: gli sviluppatori mirano a condividere una singola connessione WebSocket o Server-Sent Events (SSE) su più schede, risparmiando così risorse.
  • Gestione persistente delle risorse: un requisito per condividere e rendere persistenti le risorse tra le schede, in particolare per tecnologie come SQLite basato su WASM.
  • Colmare una lacuna funzionale: altri browser mobile principali, tra cui Safari su iOS e Firefox su Android, supportano già SharedWorker, rendendo Chrome su Android l'ultimo browser principale a colmare questa lacuna.

Origin Trial | ChromeStatus.com entry | Spec

Rimozioni

Interrompere l'invio dell'intestazione Purpose: prefetch dai prefetch e dai prerender

I precaricamenti e i prerendering ora utilizzano l'intestazione Sec-Purpose, pertanto l'intestazione Purpose: prefetch precedente viene rimossa.

Questo ambito sarà limitato alle regole di speculazione prefetch, alle regole di speculazione prerender, <link rel=prefetch> e alle funzionalità non standard di Chromium <link rel=prerender>.

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

Ritiro delle regole speciali per le dimensioni dei caratteri per H1 all'interno di alcuni elementi

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

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

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