Chrome 110 beta

Lettere CSS iniziali, gestore del lancio di app web, supporto di iframe multiorigine per l'API FedCM e altro ancora.

Se non diversamente specificato, le modifiche descritte di seguito si applicano all'ultima release 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 110 è in versione beta a partire dal 12 gennaio 2023. Puoi scaricare la versione più recente da Google.com per computer o dal Google Play Store su Android.

CSS

In questa release sono state aggiunte due nuove funzionalità CSS.

Lettere iniziali CSS

Le lettere iniziali sono grandi lettere decorative che sono state utilizzate per iniziare nuove sezioni di testo da prima dell'invenzione della stampa. La proprietà CSS initial-letter consente di impostare il numero di righe che una lettera iniziale deve scendere nelle righe di testo successive. Nell'esempio che segue, la lettera iniziale viene visualizzata su tre righe di testo.

.content::first-letter {
  initial-letter: 3;
}

Un paragrafo di testo con una lettera iniziale affondato in tre righe del paragrafo.

Pseudo-classe CSS :picture-in-picture

La pseudo-classe :picture-in-picture aiuta gli sviluppatori web a personalizzare il media player quando i video entrano ed escono da Picture in picture.

Prova una demo della pseudo-classe :picture in picture.

API web

AudioContext.setSinkId()

AudioContext.setSinkId imposta l'ID del dispositivo audio da utilizzare per l'output. In questo modo AudioContext può indirizzare l'audio a un dispositivo di output connesso di tua scelta.

Scopri di più su questa funzionalità nell'articolo Cambiare il dispositivo di output di destinazione in audio web.

FedCM nell'iframe multiorigine

Aggiunge il supporto di iframe multiorigine per l'API FedCM tramite un criterio di autorizzazione. Consente ai siti web di eseguire la sandbox degli script dei provider di identità che attivano l'API FedCM in un iframe multiorigine, in modo da non avere il controllo completo sull'intera pagina. Questo consente anche i casi d'uso in cui è l'iframe stesso a richiedere l'accesso da parte dell'utente. In entrambi i casi, il frame principale deve fornire l'iframe multiorigine con il criterio di autorizzazione identity-credentials-get.

IFrame senza credenziali

L'iframe senza credenziali offre agli sviluppatori un modo per caricare documenti in iframe di terze parti utilizzando contesti nuovi e temporanei. Gli iframe senza credenziali sono una generalizzazione del valore COEP senza credenziali per supportare iframe di terze parti che potrebbero non eseguire il deployment di COEP. In questo modo viene rimosso il vincolo che gli iframe di terze parti devono supportare COEP per essere incorporati in una pagina COEP e sbloccheranno gli sviluppatori che vogliono adottare l'isolamento multiorigine.

Scopri di più sull'iframe senza credenziali.

Metodo FileSystemHandle::remove()

Il metodo remove() di FileSystemHandle consente il caso d'uso comune in cui si ottiene un handle di file da showSaveFilePicker(), ma in seguito decidi di non salvare tutto ed eliminare il file. Prima di aggiungere questo metodo, era impossibile rimuovere un file o una directory dal suo handle. Devi ottenere l'handle della directory principale e chiamare FileSystemDirectoryHandle::removeEntry().

Precaricamento attivato dall'API delle regole di speculazione

Il precaricamento recupera la risorsa principale per la navigazione futura, conservandola in memoria per poterla utilizzare per velocizzare la navigazione successiva. Questo lancio include sia il precaricamento dello stesso sito sia il precaricamento tra siti nel caso in cui non siano presenti credenziali per il sito di destinazione.

Utilizza l'elaborazione IDNA non transitoria negli URL

Abilita IDNA 2008 in modalità non transitoria per l'elaborazione degli URL, allineando il comportamento di Chrome a Firefox e Safari. Chrome attualmente utilizza IDNA 2008 in modalità di transizione nell'elaborazione degli URL. La principale differenza tra la modalità di transizione e quella di non transizione è la gestione di quattro caratteri noti come caratteri di deviazione: ß (LATIN Small LETTER SHARP S), {8} (GREEK Small LETTER FINAL SIGMA), ZWJ (Zero width joiner) e ZWNJ (Zero width non-joiner). In modalità Transizione, i caratteri di deviazione vengono gestiti come IDNA2003: ß è mappato a ss, β è mappato a β e ZWJ e ZWNJ vengono eliminati. Nella modalità non transitoria, i domini contenenti questi caratteri sono consentiti nei nomi di dominio senza mappatura e possono quindi risolversi in indirizzi IP diversi. Ad esempio, se digiti faß.de in Chrome e Firefox, oggi si aprono diversi siti. L'attivazione dell'IDNA non transitorio in Chrome consentirà i caratteri di deviazione nei nomi di dominio. Firefox e Safari hanno già apportato questa modifica nel 2016 e continuano a utilizzare l'elaborazione degli URL non transitori.

Gestore dell'avvio di app web

Aggiungi un membro del file manifest dell'app web di launch_handler che consenta alle app web di personalizzare il comportamento di avvio per tutti i tipi di attivatori di avvio delle app. Ad esempio, quanto segue farà sì che tutti i lanci dell'app di esempio attivino una finestra dell'app esistente e la spostino (se esistente) anziché aprire sempre una nuova finestra dell'app.

{
    "name": "Example app",
    "start_url": "/index.html",
    "launch_handler": {
        "client_mode": "navigate-existing"
    }
}

norme relative alle autorizzazioni per la condivisione sul web

Controlla l'accesso a navigator.share(). Per impostazione predefinita, gli iframe di terze parti non sono autorizzati a utilizzare l'API Web Share.

Prove dell'origine in corso

In Chrome 110 puoi attivare le seguenti nuove prove delle origini.

Supporto No-Vary-Search nella cache di precaricamento della navigazione

Attiva il precaricamento per la corrispondenza anche se i parametri di query dell'URL cambiano. L'intestazione della risposta HTTP No-Vary-Search dichiara che alcune o tutte le parti di una query URL possono essere ignorate ai fini della corrispondenza della cache. Può dichiarare che l'ordine delle chiavi dei parametri di query non deve causare fallimenti della cache, che parametri di query specifici non devono causare fallimenti della cache o che solo alcuni parametri di query noti dovrebbero causare fallimenti della cache. Potrebbe essere applicabile a più cache, ma questa voce fa riferimento al supporto della cache di precaricamento.

Registrati per ricevere il supporto No-Vary-Search nella prova della cache di precaricamento per la navigazione.

PerformanceResourceTiming.deliveryType

Esporre le informazioni sulla distribuzione di una risorsa. Ad esempio, sono utili da identificare le risorse pubblicate dalla cache (attualmente esposte tramite transferSize) e le navigazioni precaricate dalla pagina precedente.

Voce prestazioni SoftNavigator

Presenta l'euristica di navigazione soft (sperimentale) agli sviluppatori web, utilizzando sia PerformanceObservationr sia la sequenza temporale del rendimento.

Registrati alla prova dell'euristica di navigazione soft.

Regole di speculazione: consegna tramite l'intestazione Speculation-Rules

Attualmente gli sviluppatori possono specificare regole di speculazione solo utilizzando tag di script incorporati. La funzionalità proposta fornisce un'alternativa tramite l'intestazione "Speculation-Rules". Il suo valore deve essere un URL che rimanda a una risorsa di testo con tipo MIME application/speculationrules+json. Le regole della risorsa verranno aggiunte alla serie di regole del documento.

Regole di speculazione: regole basate sui documenti

Estensione della sintassi delle regole di speculazione che consente al browser di ottenere gli URL per la speculazione dagli elementi link in una pagina. Possono includere criteri che limitano i link che possono essere utilizzati.

X-Requested-With in WebView

Prova relativa al ritiro per mantenere il comportamento precedente di X-Requested-Header su Android WebView. Questa intestazione al momento è impostata con il nome del pacchetto dell'app di incorporamento come valore, ma questo comportamento verrà rimosso in un'implementazione lenta. Durante il ritiro, questa prova consentirà ai proprietari dei siti di continuare a ricevere l'intestazione durante la migrazione dall'utilizzo.

Ulteriori informazioni su questo ritiro verranno fornite in un post del blog separato. Registrati alla prova relativa al ritiro di X-Requested-With qui.

Rimozioni e deprecazioni

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 release di Chrome vengono rimosse due funzionalità.

Rimuovi SQL web in contesti non sicuri

SQL web viene ora rimosso in contesti non sicuri. Ti consigliamo di passare a SQLite Wasm nel browser supportato dal file system privato di origine.

Rimuovi window.webkitStorageInfo

Rimuove il supporto per l'API per la quota di spazio di archiviazione legacy, window.webkitStorageInfo. Introdotta originariamente nel 2011, Chrome ha implementato l'API della quota con prefisso, a cui ha subito successo l'API Quota, che è stata poi ritirata. L'API legacy per la quota di spazio di archiviazione non è mai stata implementata da altri browser ed è stata contrassegnata come deprecata dal 2013.