Stili con ambito per CSS, funzionalità multimediali aggiuntive, contenitori di scorrimento attivabili dalla tastiera e altro ancora.
Se non diversamente indicato, le modifiche descritte si applicano alla release del canale beta di Chrome più recente per Android, ChromeOS, Linux, macOS e Windows. Scopri di più sulle funzionalità elencate qui tramite i link forniti o nell'elenco su ChromeStatus.com. Chrome 118 è in versione beta a partire dal 13 settembre 2023. Puoi scaricare la versione più recente su Google.com per computer o dal Google Play Store su Android.
CSS
In questa release sono state aggiunte quattro nuove funzionalità CSS.
Stili con ambito
La regola @scope
consente agli sviluppatori di applicare regole di stile a una determinata radice di definizione dell'ambito e di applicare uno stile agli elementi in base alla vicinanza di tale radice di definizione.
Valori logici relativi al flusso CSS
Aggiunge i seguenti nuovi valori alle proprietà CSS esistenti:
float: inline-start
float: inline-end
clear: inline-start
clear: inline-end
resize: block
resize: inline
Queste parole chiave direzionali relative al flusso si risolvono in un valore fisico in base alla modalità di scrittura o alla direzione dell'elemento o del blocco che lo contiene.
Query supporti: funzionalità prefers-reduced-transparency
Aggiunge la funzionalità multimediale prefers-reduced-transparency
, che consente agli sviluppatori di adattare i contenuti web alle preferenze selezionate dall'utente per una minore trasparenza nel sistema operativo, ad esempio l'impostazione Riduci la trasparenza su macOS. Le opzioni valide sono reduce
o no-preference
.
Supporta tratto-box, content-box e border-box nella proprietà CSS transform-box.
L'aggiunta di questo supporto consente di modificare il modo in cui viene calcolata la casella di riferimento per la proprietà transform
. Ciò consente trasformazioni o effetti grafici aggiuntivi. Ad esempio, la rotazione intorno a un punto nella casella dei contenuti, dove la larghezza del bordo di un elemento non influisce sul risultato. Oppure, nei casi in cui il tratto di un elemento (SVG) dovrebbe influenzare il risultato, ad esempio quando si ruota una forma tratteggiata attorno al suo centro, incluso il tratto.
HTML
Contenitori di scorrimento attivati da tastiera
Migliora l'accessibilità rendendo i container di scorrimento attivabili tramite la navigazione con focus sequenziale. Prima di questa modifica, il tasto Tab non impostava lo stato attivo sugli strumenti di scorrimento, a meno che tabIndex
non sia impostato esplicitamente su 0
o superiore. Se rendi attivi gli strumenti di scorrimento per impostazione predefinita, gli utenti che non possono (o non vogliono) utilizzare il mouse potranno accedere ai contenuti ritagliati utilizzando il tasto Tab e i tasti freccia di una tastiera. Questo comportamento non si applica agli strumenti di scorrimento che contengono elementi attivabili dalla tastiera, poiché sono già accessibili tramite la tastiera.
Rimuovi il comportamento della modalità non standard per l'attributo etichetta dell'opzione
Gli elementi opzione supportano un attributo label
che fa sì che l'opzione venga visualizzata con il testo all'interno dell'attributo anziché con il testo secondario dell'elemento opzione stesso. Questa funzionalità è disattivata in modalità non standard, in cui l'attributo etichetta viene ignorato e il testo secondario viene sempre visualizzato. Per questa modifica verrà sempre utilizzato l'attributo etichetta sia in modalità standard che in modalità non standard.
API web
Registrazione a Privacy Sandbox (PSB)
Man mano che le API di misurazione e pertinenza di Privacy Sandbox iniziano a essere utilizzate per la disponibilità generale, vogliamo assicurarci che queste tecnologie vengano utilizzate come previsto e con trasparenza. Le API includono Attribution Reporting, l'API Protected Audience, l'API Topics, l'API Private Aggregation e l'API Shared Storage. PSB sta introducendo un nuovo processo di registrazione degli sviluppatori per le API di misurazione e pertinenza di Privacy Sandbox. Chrome recupererà l'elenco dei siti registrati dal server di registrazione (tramite il programma di aggiornamento dei componenti) e lo utilizzerà per limitare l'accesso alle API Privacy Sandbox.
Blocca tutti i cookie impostati tramite JavaScript che contengono caratteri di controllo
Aggiorna la modalità di gestione dei caratteri di controllo nei cookie impostati tramite JavaScript. In particolare, tutti i caratteri di controllo causano il rifiuto dell'intero cookie. In precedenza, un carattere NULL, un carattere di ritorno a capo o un carattere di avanzamento riga in una riga dei cookie causava un troncamento invece di essere rifiutato completamente, il che avrebbe potuto consentire un comportamento dannoso in determinate circostanze. Questo comportamento adatta Chrome al comportamento indicato dalle ultime bozze di RFC6265bis. Questa modifica può essere disabilitata utilizzando il criterio aziendale --disable-features=BlockTruncatedCookies
o BlockTruncatedCookies, che esisterà per diversi obiettivi nel caso in cui questa modifica causi interruzioni.
Dimensioni minime dei caratteri coerenti in tutte le lingue
Modifica l'impostazione predefinita in modo che l'opzione Dimensioni minime dei caratteri sia disattivata per impostazione predefinita per sette lingue (arabo, persiano, giapponese, coreano, tailandese, cinese semplificato e tradizionale) per migliorare l'interoperabilità e l'accessibilità. Prima di questa modifica, questa impostazione era disattivata per impostazione predefinita per tutte le lingue, ad eccezione delle sette lingue elencate. Questa modifica rende queste lingue coerenti con le altre. Tieni presente che non si tratta di modificare la funzione relativa alle dimensioni minime dei caratteri. Sarà disponibile senza alcuna modifica all'accessibilità e alla leggibilità.
Rileva le transizioni UA nelle navigazioni nello stesso documento
Le transizioni visive fluide mentre gli utenti navigano sul web possono ridurre il carico cognitivo in quanto aiutano gli utenti a rimanere nel contesto. Tuttavia, l'esperienza utente è negativa se sia l'autore del sito sia l'UA aggiungono queste transizioni: queste possono entrare in conflitto e creare confusione per l'utente. Questa API evita questi casi per garantire che venga eseguita una sola transizione visiva alla volta. L'API aggiunge un valore booleano su PopStateEvent
e NavigateEvent
per indicare se l'UA ha eseguito una transizione visiva per questa navigazione. Gli sviluppatori possono utilizzare questa opzione per saltare la transizione personalizzata.
L'analizzatore sintattico dell'URL non decodifica i caratteri ASCII con codifica percentuale nel percorso dell'URL
Questa modifica impedisce al parser dell'URL di decodificare i caratteri ASCII con codifica percentuale nel percorso dell'URL, ad esempio "%41" ("A"). Prima di questa modifica:
const url = new URL("http://example.com/%41");
url.href "http://example.com/A"
Dopo questa modifica:
const url = new URL("http://example.com/%41");
url.href "http://example.com/%41"
Targeting per esclusione dei segmenti di pubblico protetti
Nelle aste degli annunci online per lo spazio pubblicitario, a volte è utile impedire che un annuncio venga mostrato a determinati segmenti di pubblico, un concetto noto come targeting per esclusione. Ad esempio, potresti non voler mostrare l'annuncio di un nuovo cliente a quelli esistenti. Questo è un requisito fondamentale per le campagne di acquisizione di nuovi clienti. Al momento, Protected Audience consente agli annunci di scegliere come target utenti che sono stati uniti a un determinato gruppo basato sugli interessi tramite alcune attività passate sul web. Questa funzionalità estende Protected Audience per attivare il targeting per esclusione consentendo ai nuovi annunci di scegliere come target solo gli utenti che non sono stati uniti a un determinato gruppo basato sugli interessi. In questo modo, consentiamo agli inserzionisti di scegliere come target nuovi gruppi di utenti utilizzando i concetti esistenti dell'API Protected Audience incentrati sulla tutela della privacy.
Rimuovi il requisito di attivazione degli utenti pagamenti
Per aiutare gli sviluppatori a ridurre i problemi nei flussi di richiesta di pagamento, rimuoveremo il requisito di attivazione degli utenti nelle sezioni Richieste di pagamento e Conferma di pagamento sicuro. Con questa modifica vengono messe in atto misure di mitigazione contro spam e clickjacking per mitigare i rischi per la sicurezza e la privacy.
WebUSB nei service worker di estensione
Consente agli sviluppatori web di utilizzare l'API WebUSB quando rispondono agli eventi delle estensioni esponendo l'API WebUSB ai Service worker registrati dalle estensioni del browser. Questa API non è attualmente esposta ai service worker registrati dai siti.
I documenti XML uniscono sezioni CDATA consecutive in un singolo nodo
A causa di un bug in libxml, le sezioni CDATA di un documento HTML a volte possono produrre erroneamente più nodi, a seconda delle dimensioni del documento e della posizione della sezione CDATA nel documento. Quando una singola sezione CDATA si estende su più blocchi dell'analizzatore sintattico di input, libxml esegue il buffer ed emette l'input CDATA nelle esecuzioni da 300 byte. Questo trasforma inaspettatamente una singola sezione CDATA in più nodi (se la lunghezza del blocco di input è superiore a 300 byte). Con questa modifica, i nodi della sezione CDATA di pari livello vengono uniti in una singola sezione CDATA durante l'analisi. In questo modo è stato corretto il bug libxml durante l'analisi, ma verranno uniti anche i nodi separati creati, ad esempio: <![CDATA[foo]]><!CDATA[bar]]>
produce un singolo nodo DOM CDATA con contenuti "foobar": CDATA "foobar"
.
Modifica la condizione della finestra di dialogo del gestore prima dell'unload
Sono state apportate due nuove modifiche al modo in cui viene richiesta la finestra di dialogo di annullamento per l'evento beforeunload
.
Se viene chiamato event.preventDefault()
, chiedi di annullare la finestra di dialogo.
Se event.returnValue
è la stringa vuota, non richiedere la finestra di dialogo di annullamento.
Prove dell'origine in corso
In Chrome 118 puoi attivare la seguente nuova prova dell'origine.
Trasformazione codificata WebRTC: modifica delle funzioni dei metadati
Aggiunge funzionalità all'API WebRTC Encoded Transform che consentono di manipolare i metadati dei fotogrammi audio e video. Sono stati identificati numerosi casi d'uso che richiedono la manipolazione dei contenuti multimediali codificati WebRTC senza prima decodificarli. Queste includono:
- Invio di dati codificati in precedenza.
- Invio di dati ricevuti in formato codificato.
- Ricezione di dati in formato codificato e inoltro.
In particolare, vogliamo supportare il caso d'uso dell'inoltro senza glitch di contenuti multimediali provenienti da più connessioni peer ridondanti che forniscono gli stessi payload multimediali ma con metadati diversi.
Registrati alla prova dell'origine RTCEncodedFrameSetMetadata.
Rimozioni e rimozioni
Questa versione di Chrome introduce i ritiri e le rimozioni elencati di seguito. Visita il sito ChromeStatus.com per consultare gli elenchi di ritiri pianificati, ritiri attuali e rimozioni precedenti.
In questa versione di Chrome viene rimossa la funzionalità riportata di seguito.
Rimozione di alcune parole chiave di aspetto non standard
In Chrome 118, vengono disattivate le parole chiave non standard di appearance
con il minore utilizzo. Una volta disattivata la funzione, la proprietà dell'aspetto verrà ignorata se utilizza la parola chiave in questione come valore. Le parole chiave disattivate in Chrome 118 sono quelle con un utilizzo inferiore allo 0,001%:
media-slider
media-sliderthumb
media-volume-slider
media-volume-sliderthumb
sliderthumb-horizontal
sliderthumb-vertical
Sfondo
Poiché dovrebbero essere supportate solo le parole chiave appearance
standard, rimuoveremo le parole chiave appearance
(e -webkit-appearance
) non standard. L'elenco completo è il seguente:
inner-spin-button
media-slider
media-sliderthumb
media-volume-slider
media-volume-sliderthumb
push-button
searchfield-cancel-button
slider-horizontal
sliderthumb-horizontal
sliderthumb-vertical
square-button
Tieni presente che il valore slider-vertical
non verrà rimosso nell'ambito di questa operazione
patch che viene utilizzata per autorizzare <input type=range>
verticale. Sarà
rimossa una volta completata l'adozione della modalità di scrittura verticale dei controlli del modulo.
Prima della disattivazione, se utilizzi una delle parole chiave indicate sopra, verrà visualizzato un avviso della console, ma la parola chiave sarà riconosciuta come un valore valido.