Data di pubblicazione: 1° ottobre 2025
Se non diversamente indicato, queste modifiche si applicano alla release del canale beta di Chrome 142 per Android, ChromeOS, Linux, macOS e Windows. Scopri di più su queste funzionalità dai link forniti o su ChromeStatus.com. Scarica Chrome 142 beta da Google.com per il computer o dal Google Play Store per Android.
CSS e UI
:target-before
e :target-after
pseudo-classi
Queste pseudo-classi corrispondono ai marcatori di scorrimento che precedono o seguono il marcatore attivo (corrispondente a :target-current
) all'interno dello stesso gruppo di marcatori di scorrimento, come determinato dall'ordine dell'albero piatto:
:target-before
: Corrisponde a tutti i marcatori di scorrimento che precedono il marcatore attivo nell'ordine dell'albero piatto all'interno del gruppo.:target-after
: corrisponde a tutti i marcatori di scorrimento che seguono il marcatore attivo nell'ordine dell'albero piatto all'interno del gruppo.
Posizionamento assoluto per l'elemento ::view-transition
Le transizioni di visualizzazione utilizzano un pseudo-albero secondario dell'elemento, con ::view-transition
come radice della transizione. In precedenza, l'elemento ::view-transition
era specificato per avere position: fixed
. Il CSS Working Group ha deciso di apportare
questa modifica position: absolute
e Chrome ora la riflette.
Questa modifica non dovrebbe essere visibile perché il blocco contenitore di questo elemento rimane il blocco contenitore dello snapshot nel caso assoluto o fisso. L'unica differenza notevole è in getComputedStyle
.
Proprietà activeViewTransition
nel documento
L'API View Transitions consente agli sviluppatori di avviare transizioni visive tra stati diversi. Il punto di ingresso SPA principale è startViewTransition()
, che restituisce un oggetto di transizione. Questo oggetto contiene diverse promesse e funzionalità per monitorare l'avanzamento della transizione e consente di manipolare le transizioni, ad esempio saltandole o modificandone i tipi.
A partire da Chrome 142, gli sviluppatori non devono più archiviare questo oggetto. Una proprietà document.activeViewTransition
rappresenta questo oggetto oppure null
se non è in corso alcuna transizione.
Ciò vale anche per le transizioni MPA, in cui l'oggetto è disponibile solo tramite gli eventi pageswap
e pagereveal
. In questo aggiornamento, document.activeViewTransition
è impostato su questo oggetto per tutta la durata della transizione.
Sintassi dell'intervallo per le query sui contenitori di stili e if()
Chrome migliora le query di stile CSS e la funzione if()
aggiungendo il supporto della sintassi dell'intervallo.
Estende le query di stile oltre la corrispondenza esatta dei valori (ad esempio, style(--theme: dark)
). Gli sviluppatori possono utilizzare operatori di confronto (come >
e <
) per confrontare proprietà personalizzate, valori letterali (ad esempio, 10 px o 25%) e valori di funzioni di sostituzione come attr()
e env()
. Per un confronto valido, entrambi i lati devono essere risolti nello stesso tipo di dati. È limitato ai seguenti tipi numerici: <length>
, <number>
, <percentage>
, <angle>
, <time>
, <frequency>
e <resolution>
.
Esempi:
Confronta una proprietà personalizzata con una lunghezza letterale:
@container style(--inner-padding > 1em) {
.card {
border: 2px solid;
}
}
Confrontare due valori letterali
@container style(1em < 20px) {
/* ... */
}
Utilizzo degli intervalli di stili in if()
:
.item-grid {
background-color: if(style(attr(data-columns, type<number>) > 2): lightblue; else: white);
}
Invoker degli interessi (attributo interestfor
)
Chrome aggiunge un attributo interestfor
agli elementi <button>
e <a>
. Questo attributo aggiunge comportamenti di "interesse" all'elemento. Quando un utente "mostra interesse" per l'elemento, vengono attivate azioni sull'elemento di destinazione, ad esempio la visualizzazione di un popup. Lo user agent rileva quando un utente "mostra interesse" per l'elemento tramite metodi quali il posizionamento del puntatore sopra l'elemento, la pressione di tasti di scelta rapida speciali sulla tastiera o la pressione prolungata dell'elemento sui touchscreen. Quando l'interesse viene mostrato o perso, viene attivato un InterestEvent
sul target, che ha azioni predefinite per i popup, come la visualizzazione e l'occultamento.
Proprietà font-language-override
Chrome introduce il supporto della proprietà CSS font-language-override
. La proprietà consente agli sviluppatori di ignorare la lingua di sistema utilizzata per la sostituzione dei glifi OpenType specificando un tag di lingua di quattro caratteri direttamente nel CSS.
Consente un controllo tipografico granulare, particolarmente utile per i contenuti multilingue o per i caratteri con varianti di glifi specifiche per la lingua.
L'attributo download
nell'elemento SVG <a>
Chrome introduce il supporto dell'attributo download
nell'interfaccia SVGAElement
, in linea con la specifica SVG 2. L'attributo download
consente agli autori di specificare che scarica la destinazione di un collegamento ipertestuale SVG anziché accedervi. Questo comportamento rispecchia quello già supportato in HTMLAnchorElement
. Promuove l'interoperabilità tra i principali browser e garantisce un comportamento coerente tra gli elementi HTML e SVG <a>
, migliorando l'esperienza degli sviluppatori e le aspettative degli utenti.
Parità tra dispositivi mobili e computer per le modalità di rendering degli elementi selezionati
Utilizzando gli attributi size
e multiple
, l'elemento <select>
può essere visualizzato come una casella di riepilogo nella pagina o come un pulsante con un popup. Tuttavia, queste modalità non sono disponibili in modo coerente su Chrome per dispositivi mobili e computer. Il rendering della casella di riepilogo nella pagina non è disponibile sui dispositivi mobili e un pulsante con un popup non è disponibile sui computer quando è presente l'attributo multiple
.
Questo aggiornamento aggiunge la casella di riepilogo ai dispositivi mobili e un popup di selezione multipla ai computer, garantendo che i consensi con gli attributi size
e multiple
generino la stessa modalità di rendering su dispositivi mobili e computer. Le modifiche sono riassunte come segue:
- Quando l'attributo
size
ha un valore maggiore di1
, viene sempre utilizzato il rendering sulla pagina. In precedenza i dispositivi mobili ignoravano questo valore. - Quando l'attributo
multiple
è impostato senza l'attributosize
, viene utilizzato il rendering sulla pagina. I dispositivi mobili in precedenza utilizzavano un popup anziché una casella di riepilogo nella pagina. - Quando l'attributo
multiple
è impostato susize=1
, viene utilizzato un popup. I dispositivi desktop utilizzavano in precedenza un elenco a discesa nella pagina.
Attivazione utente persistente nelle navigazioni avviate dal renderer della stessa origine
Chrome mantiene lo stato di attivazione utente permanente dopo che una pagina passa a un'altra pagina della stessa origine. La mancata attivazione dell'utente nella pagina post-navigazione impedisce alcuni casi d'uso, ad esempio la visualizzazione di tastiere virtuali con messa a fuoco automatica. Ciò ha bloccato gli sviluppatori che vogliono creare MPA anziché SPA.
Non sono incluse le richieste di navigazione avviate dal browser (ricarica, navigazione nella cronologia, URL digitato nella barra degli indirizzi e così via).
API web
WebGPU: funzionalità primitive_index
WebGPU aggiunge una nuova funzionalità facoltativa che espone un nuovo shader integrato WGSL, primitive_index
. Fornisce un indice per primitiva agli shader di frammenti sull'hardware supportato, in modo simile alle funzioni integrate vertex_index
e instance_index
. L'indice delle primitive è utile per tecniche grafiche avanzate, come la geometria virtualizzata.
WebGPU: Texture formats tier1 and tier2
Estendi il supporto del formato delle texture della GPU con funzionalità come render attachment, blending, multisampling, resolve e storage_binding.
Proprietà DataTransfer per gli eventi di input insertFromPaste
, insertFromDrop
e insertReplacementText
Compila la proprietà dataTransfer
negli eventi di input con i valori inputType
di insertFromPaste
, insertFromDrop
e insertReplacementText
per fornire l'accesso ai dati degli appunti e di trascinamento della selezione durante le operazioni di modifica negli elementi contenteditable.
L'oggetto dataTransfer
contiene gli stessi dati disponibili durante l'evento beforeinput
.
Questa funzionalità si applica solo agli elementi modificabili. Per i controlli modulo
(textarea
, input
), il comportamento rimane invariato.
Questa proprietà rende Chrome interoperabile con Safari e Firefox.
Sessione multimediale: aggiungi il motivo ai dettagli dell'azione enterpictureinpicture
Aggiunge enterPictureInPictureReason
all'MediaSessionActionDetails
inviato all'azione enterpictureinpicture
nell'API Media Session. In questo modo, gli sviluppatori possono distinguere tra le azioni enterpictureinpicture
attivate esplicitamente dall'utente (ad esempio, da un pulsante nello user agent) e le azioni enterpictureinpicture
attivate automaticamente dallo user agent perché i contenuti vengono oscurati.
Bias contestuale dell'API Web Speech
Questo aggiornamento consente ai siti web di supportare la distorsione contestuale per il riconoscimento vocale aggiungendo un elenco di frasi di riconoscimento all'API Web Speech.
Gli sviluppatori possono fornire un elenco di frasi e aggiornarle per applicare un bias ai modelli di riconoscimento vocale a favore di queste frasi. Contribuisce a migliorare l'accuratezza e la pertinenza del riconoscimento vocale personalizzato e specifico per il dominio.
Convalida più rigorosa del token MIME *+json
per i moduli JSON
Rifiuta le risposte dello script del modulo JSON il cui tipo o sottotipo di tipo MIME contiene punti di codice token non HTTP (ad esempio, spazi) quando corrisponde a *+json
. Ciò è in linea con la specifica MIME Sniffing e altri motori. Fa parte dell'area di interesse dei moduli Interop2025.
FedCM: supporto della visualizzazione delle origini iframe di terze parti nella UI
Prima di Chrome 142, FedCM mostrava sempre il sito di primo livello nella sua UI.
Questo approccio funziona bene quando l'iframe è concettualmente proprietario (ad esempio, foo.com
potrebbe avere un iframe foostatic.com
, che non è significativo per l'utente).
Tuttavia, se l'iframe è di terze parti, è meglio mostrare l'origine dell'iframe nell'interfaccia utente in modo che gli utenti comprendano meglio con chi condividono le proprie credenziali. Ad esempio, un editor di foto potrebbe essere incorporato in un'app web di pubblicazione di libri e potrebbe voler consentire agli utenti di accedere ai file che hanno memorizzato in precedenza con l'editor di foto. Questa funzionalità è ora disponibile.
Isolamento dei processi in base all'origine
Sposta la policy di isolamento dei processi dal blocco dei processi a un sito (ad esempio example.com
) al blocco a un'origine specifica (ad esempio foo.example.com
).
Per migliorare ulteriormente la sicurezza, Chrome sta passando a un modello di isolamento dei processi più granulare chiamato "isolamento dell'origine". Chrome utilizzava l'isolamento dei siti, che raggruppava origini diverse dello stesso sito, ad esempio a.example.com
e b.example.com
, in un unico processo di rendering.
Con l'isolamento dell'origine, ogni singola origine (ad esempio https://foo.example.com
) viene isolata nel proprio processo di rendering. Rafforza l'architettura di sicurezza di Chrome allineando i limiti dei processi al modello di sicurezza fondamentale basato sull'origine del web, offrendo una maggiore protezione contro le potenziali vulnerabilità all'interno dei siti.
Eventi pointerrawupdate
interoperabili esposti solo in contesti sicuri
La specifica PointerEvents ha limitato pointerrawupdate
ai contesti sicuri nel 2020, nascondendo sia l'attivazione dell'evento sia i listener di eventi globali dai contesti non sicuri. Con questo aggiornamento, Chrome corrisponde alla specifica aggiornata e diventa interoperabile con gli altri browser principali.
Prove dell'origine in corso
In Chrome 142 puoi attivare le seguenti nuove prove dell'origine.
Credenziali di sessione associate al dispositivo
Un modo per i siti web di associare in modo sicuro una sessione a un singolo dispositivo.
Consente ai server di associare in modo sicuro una sessione a un dispositivo. Il browser rinnova periodicamente la sessione quando richiesto dal server, con la prova del possesso di una chiave privata.
Pool di socket TCP per sito di primo livello
Questo esperimento valuta l'impatto della modifica della dimensione del pool di socket TCP per profilo da 256 (valore predefinito) a 513, aggiungendo un limite di 256 per sito di primo livello (per garantire che nessuna scheda possa esaurire il pool). È stata studiata la fattibilità di aumentare il limite per profilo a 512 e non sono stati riscontrati risultati negativi. Il limite di 256 per sito di primo livello è uguale al limite predefinito per profilo, quindi non dovrebbe influire negativamente sul rendimento. Questi limiti vengono imposti in modo indipendente per il pool WebSocket e il pool di socket normale (HTTP).
L'obiettivo è lanciare questo esperimento direttamente se non si verificano effetti negativi.