Chrome 150

Data di rilascio della versione stabile: 30 giugno 2026

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

CSS e UI

Colori di sistema AccentColor e AccentColorText

I colori di sistema AccentColor e AccentColorText possono essere utilizzati in CSS per accedere al colore intenso di sistema specificato sul dispositivo dell'utente. In questo modo, gli sviluppatori possono applicare uno stile simile a quello delle app native ai propri contenuti web in contesti in cui gli utenti si aspettano l'integrazione del tema del sistema operativo, ad esempio un'applicazione web installata. Gli utenti devono trovarsi in un'applicazione web installata nel profilo iniziale per visualizzare il colore intenso del sistema.

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

Consenti il parametro di arrotondamento facoltativo per polygon()

Aggiunge un parametro facoltativo di arrotondamento degli angoli nella funzione di forma CSS polygon(). Gli sviluppatori possono specificare un valore di lunghezza per arrotondare gli angoli del poligono senza calcolare manualmente le curve di Bézier.

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

Animabile zoom

La proprietà CSS zoom è animabile e viene interpolata come <number>. Gli sviluppatori possono eseguire la transizione e animare zoom per scalare in modo fluido gli elementi e il loro layout, integrando il ridimensionamento esistente basato sulla trasformazione.

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

Modificatori delle richieste CSS url()

Le funzioni CSS url() accettano modificatori di richiesta facoltativi dopo la stringa URL tra virgolette: cross-origin(), integrity() e referrer-policy(). Questi modificatori controllano il comportamento di recupero della risorsa a cui viene fatto riferimento direttamente da CSS, senza richiedere modifiche al markup HTML o a JavaScript. Ad esempio, background-image: url("image.png" cross-origin(anonymous)) recupera l'immagine utilizzando la modalità anonima di CORS. In questo modo, gli autori hanno un controllo granulare su accesso multiorigine, integrità delle subrisorse e policy referrer per le risorse caricate tramite CSS, tra cui immagini, caratteri, riferimenti SVG e fogli di stile importati.

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

Proprietà CSS text-fit

Scala la dimensione del carattere dei nodi di testo in modo che si adattino perfettamente alla larghezza della casella che li contiene.

Questa proprietà consente agli sviluppatori di assicurarsi che i titoli o i contenuti dinamici riempiano lo spazio orizzontale disponibile senza calcoli manuali delle dimensioni del carattere o soluzioni alternative JavaScript complesse. Fornisce una soluzione robusta e nativa per la tipografia adattabile che mantiene l'allineamento visivo su schermi di diverse dimensioni e con lunghezze del testo variabili.

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

CSS background-clip: border-area

Implementa il valore border-area per la proprietà CSS background-clip, come definito in CSS Backgrounds Level 4. background-clip: border-area ritaglia lo sfondo di un elemento nell'area dipinta dai tratti del bordo, tenendo conto di border-width e border-style e ignorando la trasparenza di border-color. In questo modo, gli sviluppatori possono creare bordi sfumati senza border-image. WebKit offre già questa funzionalità; questa implementazione porta Chromium alla parità.

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

Funzione CSS image(<color>)

La funzione image() consente agli autori di generare un'immagine a tinta unita da qualsiasi colore. La sua sintassi è: image() = image( <color> )

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

CSS light-dark() con valori immagine

Estende la funzione CSS light-dark() per accettare valori di immagine (url(), image-set(), none) nei fogli di stile dell'autore, consentendo alle proprietà delle immagini come background-image, list-style-image, border-image-source, cursor e content di passare automaticamente da un'immagine all'altra in base alla combinazione di colori preferita dall'utente. In precedenza, questa operazione era consentita solo nei fogli di stile UA. Questo è in linea con la specifica CSS Color 5 e corrisponde all'implementazione esistente di Firefox.

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

Query del container separate da virgole

Supporta più query per regola @container. La regola @container si applica se almeno una delle query corrisponde.

In questo modo è possibile avere query di riserva per le funzionalità non supportate in tutti i browser.

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

Esporre aree non stampabili con CSS

Le stampanti di solito hanno una piccola area su ciascuno dei quattro bordi di un foglio di carta che non sono in grado di marcare in modo affidabile, di solito a causa del meccanismo di gestione della carta della stampante. I margini della pagina predefiniti dovrebbero essere più grandi di queste aree, ma se gli autori impostano i margini autonomamente e vogliono persino aggiungere caselle di margine @page (ad esempio, per intestazioni e piè di pagina personalizzati), hanno bisogno di un modo per sapere dove è sicuro stampare e dove no.

Il descrittore CSS page-margin-safety può essere utilizzato per evitare queste aree non stampabili.

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

flex-wrap: balance

flex-wrap: balance consente agli sviluppatori di distribuire i contenuti tra le righe flessibili in modo che appaiano più bilanciati (in modo simile a text-wrap: balance).

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

Funzione named-feature() per CSS @supports

La funzione named-feature() consente alle regole CSS @supports di eseguire query su un piccolo insieme di funzionalità specifiche denominate che non è possibile testare utilizzando altri meccanismi @supports, ma che sono considerate di grande valore per il test.

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

overscroll-behavior: chain

overscroll-behavior ora ha i valori: none, auto, contain e il nuovo valore chain. Questi valori influiscono su due effetti indipendenti: la propagazione dello scorrimento e l'effetto del bordo locale (ad esempio, l'estensione dell'overscroll).

  • none: nessuna propagazione, nessun effetto locale
  • auto: propagazione, effetto locale
  • contain: nessuna propagazione, effetto locale
  • chain: propagazione, nessun effetto locale

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

Supporto di path-length come proprietà CSS.

Questa modifica introduce una nuova proprietà CSS, path-length, che esegue il mapping all'attributo di presentazione SVG pathLength esistente. Si applica agli elementi di geometria SVG che supportano pathLength (inclusi <path>, <circle>, <rect>, <line>, <polyline>, <polygon> e <ellipse>).

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

DOM e HTML

Clona in tutti gli elementi selectedcontent discendenti

Sono in corso diverse piccole modifiche ai casi limite dell'elemento selectedcontent:

  • Quando più elementi selectedcontent vengono inseriti contemporaneamente in un elemento select, tutti vengono aggiornati anziché solo il primo nell'ordine DOM.
  • L'aggiornamento dell'elemento di contenuti selezionato viene posticipato se viene eseguito durante i passaggi di inserimento, rimozione o spostamento per risolvere problemi di sicurezza. L'aggiornamento viene rinviato utilizzando passaggi post-inserimento o microtask.

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

Focusgroup

Offre la possibilità di assegnare in modo dichiarativo ai widget compositi la navigazione con i tasti freccia, un punto di tabulazione garantito e la memorizzazione dell'ultimo elemento selezionato, sostituendo gli script di navigazione tabindex codificati manualmente. Esempio:

<div focusgroup="toolbar wrap" aria-label="Formatting">
  <button>Bold</button>
  <button>Italic</button>
  <button>Underline</button>
</div>

Voce di ChromeStatus.com | Specifica

Streaming fuori ordine

Utilizza <template for> e gli intervalli di istruzioni di elaborazione (<?marker>, <?start> e <?end>) per aggiornare le parti esistenti del documento senza JavaScript.

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

Analizza le istruzioni di elaborazione in HTML

Le istruzioni di elaborazione (sintassi: <?target data>) sono un costrutto DOM esistente, esposto in XML, che rappresenta oggetti nodo che non sono elementi, ma possono avere un significato semantico per l'elaborazione di un documento.

Le istruzioni di elaborazione vengono analizzate dal parser HTML e ricevono un'API attributo simile agli elementi per modificare i relativi dati.

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

popover=hint modifiche al comportamento

Questa modifica implementa un modello di stacking rivisto e semplificato per l'attributo popover=hint e le relative interazioni con popover=auto. In precedenza, le interazioni tra questi due tipi di popup potevano essere complesse in alcune situazioni particolari (ad esempio, l'annidamento di popup automatici all'interno di popup di suggerimento) e potevano portare a un comportamento imprevisto. Con il nuovo modello, l'apertura di un popup di suggerimento non chiude inavvertitamente i popup automatici non correlati. I popup di suggerimento vengono nascosti solo quando il popup automatico principale è nascosto o quando viene aperto un nuovo popup automatico non correlato. Inoltre, gli sviluppatori possono nidificare in modo sicuro un popup automatico all'interno di un popup di suggerimento; anziché generare un'eccezione o interrompere lo stack, il popup automatico nidificato esegue un "downgrade" e si comporta come un popup di suggerimento. Ciò supporta casi d'uso come l'inserimento di un customizable-select all'interno di un popover=hint.

Per migliorare ulteriormente la prevedibilità e prevenire mutazioni di stato complesse, stiamo anche rendendo più rigido il comportamento di apertura e chiusura dei popup dall'interno dell'evento beforetoggle. In precedenza, erano state implementate misure di protezione per alcuni, ma non per tutti, i casi possibili. Questa modifica rinnova il meccanismo utilizzato per rilevare questi casi, in modo che generi in modo più affidabile InvalidStateErrors per tutti questi casi. In questo modo, la gestione dello stato del popover rimane stabile ed evita bug di rientro in loop.

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

Promesse di scorrimento programmatiche

Questa funzionalità fornisce un segnale affidabile per lo stato di completamento di uno scorrimento fluido programmatico. Tutti i metodi di scorrimento in Element e Window restituiscono oggetti Promise che vengono risolti al termine dello scorrimento e il valore risolto indica se lo scorrimento è stato interrotto o meno.

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

Grafica e contenuti multimediali

Disattiva i filtri SVG su plug-in e iframe

Chrome 150 impedirà l'applicazione di filtri SVG a plug-in incorporati (ad esempio, PDF) e a iframe multiorigine o limitati (ad esempio, iframe in sandbox). Quando un plug-in o un iframe viene disegnato con un effetto filtro SVG, l'albero degli effetti viene attraversato per trovare il predecessore più alto senza filtri SVG e l'effetto viene applicato al suo posto.

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

WebGPU: Immediates

Aggiunge un nuovo spazio di indirizzi immediato in WGSL e un metodo setImmediateData() su encoder di pass di rendering, pass di calcolo e bundle di rendering che consente agli sviluppatori di passare piccole quantità di dati aggiornati di frequente direttamente agli shader senza creare oggetti buffer GPU o gruppi di binding.

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

Sicurezza e sintesi vocale

Origine opaca per gli URL data:

Chrome 150 aggiorna la modalità di gestione degli data: URL da parte dei worker dedicati e condivisi. Anziché ereditare automaticamente l'origine di sicurezza dello script o della pagina che li ha creati, a questi worker viene assegnata un'origine opaca univoca.

Questo allineamento con la specifica HTML del worker migliora la sicurezza isolando questi worker dallo stato della stessa origine del creator, impedendo loro di accedere a dati sensibili utilizzando meccanismi come BroadcastChannel o l'archiviazione della stessa origine. Per mantenere i limiti di isolamento corretti, questi worker risiedono ancora nella stessa partizione di archiviazione (ad esempio conservando il sito di primo livello o il nonce) del loro creatore.

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

API Web Speech: qualità del riconoscimento sul dispositivo

Estende l'interfaccia SpeechRecognition aggiungendo una proprietà quality a SpeechRecognitionOptions. Ciò consente agli sviluppatori di specificare la funzionalità semantica richiesta per il riconoscimento sul dispositivo (con processLocally: true).

L'enum di qualità proposto supporta tre livelli: command, dictation e conversation. Questi corrispondono a una maggiore complessità delle attività e requisiti hardware. In questo modo gli sviluppatori possono determinare se il dispositivo locale è in grado di gestire casi d'uso ad alto rischio (come la trascrizione di riunioni) o se devono ricorrere ai servizi cloud.

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

App web

Migrazione dell'origine PWA

Quando un utente installa un'app web progressiva (PWA), la sua identità e il suo contesto di sicurezza sono strettamente legati alla sua origine web, ad esempio app.example.com. Ciò rappresenta una sfida significativa per gli sviluppatori che devono modificare l'origine della propria PWA a causa di rebranding, ristrutturazione del dominio o riprogettazione tecnica. Senza la migrazione dell'origine, una modifica di questo tipo costringe gli utenti a disinstallare manualmente la vecchia app e a reinstallare quella nuova, il che comporta un'esperienza frustrante e un potenziale aumento del tasso di perdita di utenti. Chrome 150 introduce un meccanismo che consente agli sviluppatori di eseguire la migrazione senza interruzioni di una PWA installata in una nuova origine dello stesso sito, preservando la fiducia e le autorizzazioni degli utenti.

Il criterio WebAppInstallForceList blocca la migrazione. Poiché le policy aziendali relative alle applicazioni web si basano principalmente su URL e origini, esiste il rischio che una migrazione possa bypassare determinate policy configurate da un amministratore. Se l'installazione di un'app è stata forzata dall'amministratore aziendale, all'utente non verrà proposta alcuna migrazione; al suo posto, comparirà un banner per spiegare la situazione.

Tracking bug #396504527 | Voce di ChromeStatus.com | Specifica

Prove dell'origine

Protocollo di verifica email

EVP (protocollo di verifica email) aiuta gli utenti a creare, accedere e recuperare gli account fornendo una prova crittografica della proprietà in modo semplice anziché OTP via email manualmente.

Origin Trial | ChromeStatus.com entry | Spec

Misurazione del caricamento speculativo

Espone i dati di misurazione relativi ai caricamenti speculativi (precaricamenti, recuperi preliminari e pre-rendering) nell'ambito di un metodo performance.getSpeculations() appena esposto. In questo modo, gli sviluppatori potrebbero misurare l'efficacia di varie strategie di caricamento speculativo e adattarle di conseguenza.

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

WebRTC API Logging diagnostico

API per la registrazione diagnostica di WebRTC.

Questa API consente a un'applicazione di attivare la registrazione diagnostica. Questi log contengono informazioni sull'attività WebRTC dell'applicazione e sono utili per il debug locale o per segnalare bug.

I log possono essere caricati facoltativamente fuori banda al fornitore del browser e possono essere utilizzati per la diagnosi dei bug. L'applicazione riceve un ID che può essere allegato a una segnalazione di bug, in modo simile agli arresti anomali.

I log diagnostici sono attivati con una policy aziendale denominata WebRtcDiagnosticLogCollectionAllowedForOrigins.

Origin Trial | Bug di monitoraggio n. 481412281 | Voce di ChromeStatus.com | Specifica

Ritiri e rimozioni

Non sono presenti ritiri o rimozioni in questa release.