Chrome 110 bêta

Lettres initiales CSS, gestionnaire de lancement d'application Web, prise en charge des iframes inter-origines pour l'API FedCM, etc.

Sauf indication contraire, les modifications décrites ci-dessous s'appliquent à la dernière version du canal bêta de Chrome pour Android, ChromeOS, Linux, macOS et Windows. Pour en savoir plus sur les fonctionnalités listées ici, consultez les liens fournis ou la liste sur ChromeStatus.com. Chrome 110 est en version bêta depuis le 12 janvier 2023. Vous pouvez télécharger la dernière version sur Google.com pour ordinateur ou sur le Google Play Store sur Android.

CSS

Cette version ajoute deux nouvelles fonctionnalités CSS.

Initiales CSS

Les initiales sont de grandes lettres décoratives qui sont utilisées pour commencer de nouvelles sections de texte depuis bien avant l'invention de l'imprimerie. La propriété CSS initial-letter permet de définir le nombre de lignes sur lesquelles une lettre initiale doit s'étendre dans les lignes de texte suivantes. Dans l'exemple suivant, la lettre initiale s'affiche sur trois lignes de texte.

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

Paragraphe de texte avec une lettre initiale en retrait sur trois lignes.

Pseudo-classe CSS :picture-in-picture

La pseudo-classe :picture-in-picture aide les développeurs Web à personnaliser le lecteur multimédia lorsque les vidéos entrent et sortent du mode Picture-in-picture.

Essayez une démo de la pseudo-classe :picture-in-picture.

API Web

AudioContext.setSinkId()

AudioContext.setSinkId définit l'ID du périphérique audio à utiliser pour la sortie. Cela permet à AudioContext d'acheminer l'audio vers un appareil de sortie connecté de son choix.

Pour en savoir plus sur cette fonctionnalité, consultez l'article Modifier le périphérique de sortie de destination dans Web Audio.

FedCM dans un iFrame inter-origine

Ajoute la compatibilité avec les iFrames d'origine croisée pour l'API FedCM via une stratégie d'autorisation. Il permet aux sites Web de placer les scripts des fournisseurs d'identité qui déclenchent l'API FedCM dans un iframe inter-origine dans un bac à sable afin qu'ils n'aient pas un contrôle total sur l'ensemble de la page. Cela permet également de prendre en charge les cas d'utilisation où c'est l'iFrame elle-même qui nécessite une connexion de l'utilisateur. Dans les deux cas, le frame parent doit fournir à l'iframe inter-origine la stratégie d'autorisation identity-credentials-get.

IFrame sans identifiants

La fonctionnalité sans identifiants pour les iFrames permet aux développeurs de charger des documents dans des iFrames tiers à l'aide de nouveaux contextes éphémères. Les iFrames sans identifiants sont une généralisation des COEP pour prendre en charge les iFrames tiers qui ne déploient peut-être pas COEP. Cela supprime la contrainte selon laquelle les iFrames tiers doivent prendre en charge COEP pour être intégrées à une page COEP, et libère les développeurs qui souhaitent adopter l'isolation de domaine.

En savoir plus sur les iframe sans identifiants

Méthode FileSystemHandle::remove()

La méthode remove() de FileSystemHandle permet de gérer le cas d'utilisation courant où vous obtenez un gestionnaire de fichiers à partir de showSaveFilePicker(), mais que vous décidez finalement de ne pas enregistrer le fichier et de le supprimer. Avant l'ajout de cette méthode, il était impossible de supprimer un fichier ou un répertoire à partir de son handle. Vous deviez obtenir le handle du répertoire parent et appeler FileSystemDirectoryHandle::removeEntry().

Préchargement déclenché par l'API Speculation Rules

Le préchargement récupère la ressource principale pour une future navigation, et la conserve en mémoire afin qu'elle puisse être utilisée pour accélérer la navigation suivante. Ce lancement inclut à la fois le préchargement du même site et le préchargement intersite dans le cas où aucun identifiant n'est présent pour le site de destination.

Utiliser le traitement IDNA non transitoire dans les URL

Activation de la norme IDNA 2008 en mode non transitoire pour le traitement des URL, afin d'aligner le comportement de Chrome sur celui de Firefox et Safari. Chrome utilise actuellement IDNA 2008 en mode de transition pour le traitement des URL. La principale différence entre les modes de transition et non de transition est la gestion de quatre caractères appelés caractères de déviation: ß (LATIN SMALL LETTER SHARP S), ς (GREEK SMALL LETTER FINAL SIGMA), ZWJ (Zero width joiner) et ZWNJ (Zero width non-joiner). En mode de transition, les caractères de déviation sont traités de la même manière qu'avec IDNA2003: ß est mappé sur ss, ς est mappé sur σ, et ZWJ et ZWNJ sont supprimés. En mode non transitoire, les domaines contenant ces caractères sont autorisés dans les noms de domaine sans mappage et peuvent donc se transformer en différentes adresses IP. Par exemple, taper faß.de dans Chrome et Firefox ouvre aujourd'hui des sites différents. L'activation de l'IDNA non transitoire dans Chrome permet d'utiliser des caractères de déviation dans les noms de domaine. Firefox et Safari ont déjà effectué ce changement en 2016 et continuent d'utiliser le traitement des URL non transitoires.

Gestionnaire de lancement d'applications Web

Ajoutez un membre de fichier manifeste d'application Web launch_handler qui permet aux applications Web de personnaliser leur comportement de lancement pour tous les types de déclencheurs de lancement d'application. Par exemple, le code suivant permet de mettre en surbrillance une fenêtre d'application existante et de la parcourir (si elle existe) à chaque lancement de l'application Example, au lieu de lancer toujours une nouvelle fenêtre d'application.

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

Règlement sur l'autorisation de partage Web

Contrôle l'accès à navigator.share(). Par défaut, les iFrames tierces ne sont pas autorisés à utiliser l'API Web Share.

Phases d'évaluation en cours

Dans Chrome 110, vous pouvez activer les nouvelles phases d'évaluation des origines suivantes.

Compatibilité avec No-Vary-Search dans le cache de préchargement de navigation

Active la correspondance de préchargement, même si les paramètres de requête de l'URL changent. L'en-tête de réponse HTTP No-Vary-Search déclare que certaines parties ou l'ensemble d'une requête d'URL peuvent être ignorées à des fins de mise en correspondance du cache. Il peut déclarer que l'ordre des clés de paramètre de requête ne doit pas entraîner de manques de cache, que des paramètres de requête spécifiques ne doivent pas entraîner de manques de cache ou que seuls certains paramètres de requête connus doivent entraîner des manques de cache. Il peut s'appliquer à plusieurs caches, mais cette entrée fait référence à la prise en charge du cache de préchargement.

Inscrivez-vous pour bénéficier de la compatibilité avec No-Vary-Search dans le cache de préchargement de la navigation.

PerformanceResourceTiming.deliveryType

Fournissez des informations sur la façon dont une ressource a été diffusée. Par exemple, il est utile d'identifier les ressources fournies à partir du cache (actuellement exposées via transferSize) et les navigations préchargées par la page précédente.

Entrée des performances de SoftNavigation

Exposer les heuristiques de navigation douce (expérimentales) aux développeurs Web, à l'aide de PerformanceObserver et de la chronologie des performances.

Inscrivez-vous à l'essai des heuristiques de navigation douce.

Règles de spéculation: diffusion via l'en-tête Speculation-Rules

Actuellement, les développeurs ne peuvent spécifier des règles de spéculation qu'à l'aide de balises de script intégrées. La fonctionnalité proposée offre une alternative via l'en-tête "Speculation-Rules". Sa valeur doit être une URL vers une ressource textuelle avec le type MIME application/speculationrules+json. Les règles de la ressource seront ajoutées à l'ensemble de règles du document.

Règles de spéculation: règles issues de documents

Extension de la syntaxe des règles de spéculation qui permet au navigateur d'obtenir des URL à des fins de spéculation à partir des éléments de lien d'une page. Ils peuvent inclure des critères qui limitent les liens que vous pouvez utiliser.

X-Requested-With dans WebView

Test d'abandon pour conserver l'ancien comportement de X-Requested-Header sur Android WebView. Cet en-tête est actuellement défini avec le nom de package de l'application d'intégration comme valeur, mais ce comportement sera supprimé progressivement. Pendant la période d'abandon, cette phase d'évaluation permettra aux propriétaires de sites de continuer à recevoir l'en-tête tout en s'en séparant.

Nous vous communiquerons plus d'informations sur cette suppression dans un article de blog distinct. Inscrivez-vous à l'essai de l'abandon de X-Requested-With ici.

Abandons et suppressions

Cette version de Chrome introduit les abandons et suppressions listés ci-dessous. Consultez ChromeStatus.com pour obtenir la liste des fonctionnalités obsolètes prévues, actuelles et supprimées précédemment.

Cette version de Chrome supprime deux fonctionnalités.

Supprimer Web SQL dans les contextes non sécurisés

Web SQL est désormais supprimé dans les contextes non sécurisés. Nous vous recommandons de passer à SQLite Wasm dans le navigateur, avec le système de fichiers privé d'origine comme base.

Supprimer window.webkitStorageInfo

Suppression de la compatibilité avec l'ancienne API de quota de stockage, window.webkitStorageInfo. Initialement lancée en 2011, Chrome a implémenté l'API de quota avec préfixe, qui a été immédiatement remplacée par l'API Quota, qui a depuis été abandonnée. L'ancienne API de quota de stockage n'a jamais été implémentée par un autre navigateur et est marquée comme obsolète depuis 2013.