Chrome 125 bêta

Sauf indication contraire, les modifications suivantes s'appliquent à la dernière version bêta de Chrome pour Android, ChromeOS, Linux, macOS et Windows. Pour en savoir plus sur les fonctionnalités listées ici, cliquez sur les liens fournis ou consultez la liste sur ChromeStatus.com. Chrome 125 est en version bêta depuis le 17 avril 2024. Vous pouvez télécharger la dernière version sur Google.com pour ordinateur ou sur le Google Play Store sur Android. Une fois la version stable, toutes les fonctionnalités incluses sont disponibles dans les notes de version.

CSS

Cette version ajoute deux nouvelles fonctionnalités CSS et apporte deux modifications liées au CSS.

Positionnement de l'ancrage CSS

Le positionnement de l'ancrage CSS permet aux développeurs de partager un élément positionné absolument avec un ou plusieurs autres éléments de la page (les ancres), de manière déclarative et sans utiliser JavaScript. Le positionnement des ancrages fonctionne de manière optimale lorsqu'il est possible de les faire défiler. Un cas d'utilisation courant consiste à positionner un pop-up, tel qu'une info-bulle à côté de l'élément qui l'a appelé, ou un menu de sélection et sa liste d'options. Avant la fonctionnalité de positionnement de l'ancrage, ces cas d'utilisation nécessitaient JavaScript pour positionner dynamiquement le pop-up et le maintenir ancré lors du défilement de l'élément appelant, ce qui est une expérience très performante et difficile à faire. Grâce au positionnement d'ancrage, ces cas d'utilisation peuvent être mis en œuvre de manière performante et de manière déclarative.

La fonctionnalité de positionnement de l'ancrage se compose d'un grand nombre de propriétés CSS. Voici quelques propriétés clés:

  • anchor-name: configure un élément comme ancrage pour d'autres éléments.
  • position-anchor: décrit l'ancre "par défaut" qu'un élément ancré doit utiliser pour son positionnement.
  • La fonction anchor(): utilisée pour faire référence à la position de l'élément ancré.
  • inset-area: raccourci de positionnement, pour les positions relatives courantes.

Fonctions de valeur échelonnées CSS : round(), mod() et rem()

Les fonctions à valeur échelonnée, round(), mod() et rem(), transforment toutes une valeur donnée en fonction d'une autre "valeur d'étape".

La fonction CSS round() renvoie un nombre arrondi en fonction de la stratégie d'arrondi sélectionnée.

La fonction CSS mod() renvoie un module restant lorsque le premier paramètre est divisé par le deuxième paramètre, comme l'opérateur JavaScript reste (%). Le module est la valeur restante lorsqu'un opérande, le dividende, est divisé par un deuxième opérande, le diviseur. Il prend toujours le signe du diviseur.

La fonction CSS rem() renvoie un reste restant lorsque le premier paramètre est divisé par le deuxième paramètre, de la même manière que l'opérateur de reste JavaScript (%). Le reste est la valeur restante lorsqu'un opérande, le dividende, est divisé par un deuxième opérande, le diviseur. Il prend toujours le signe du diviseur.

Supprimer la discontinuité pour les couleurs Oklab et Oklch avec une luminosité de près de 100% ou 0

Avant ce changement, toutes les couleurs Lab, LCH, Oklab et Oklch avec une valeur de luminosité de 100% étaient affichées en blanc, quels que soient les deux autres paramètres. Toutes les couleurs de ces espaces avec une valeur de luminosité de 0 ont été rendues en noir. Ces deux mappages entraînaient des discontinuités dans les gradients et étaient inattendus pour les développeurs Web.

Avec ce rollback, ces couleurs ne sont plus mappées artificiellement, et la couleur affichée sera continue avec les couleurs proches et dépendra du mappage de la gamme de l'écran.

Barres de défilement racine du jeu de couleurs utilisées

Le navigateur utilise le jeu de couleurs préféré de l'utilisateur pour afficher les barres de défilement de la fenêtre d'affichage si la valeur des "jeux de couleurs compatibles avec la page" est "normal" ou si non spécifiée, et si la valeur calculée de color-scheme pour l'élément racine est normal. On peut considérer que les barres de défilement de la fenêtre d'affichage se trouvent en dehors du contenu Web. Par conséquent, les user-agents doivent respecter le jeu de couleurs préféré de l'utilisateur lors de l'affichage des barres de défilement de la fenêtre d'affichage si le développeur n'a pas explicitement spécifié la prise en charge des jeux de couleurs.

Cette modification n'empêche pas les développeurs de contrôler le jeu de couleurs des barres de défilement. Le nouveau comportement oblige le navigateur à utiliser le jeu de couleurs préféré de l'utilisateur pour afficher les barres de défilement non superposées de la fenêtre d'affichage uniquement si le développeur n'a pas spécifié le jeu de couleurs de l'élément racine.

HTML

Conteneurs de défilement pouvant être sélectionnés au clavier

Améliore l'accessibilité en rendant les conteneurs de défilement sélectionnables à l'aide de la navigation de sélection séquentielle. Avant cette modification, la touche de tabulation ne mettait pas en surbrillance les défilements, sauf si tabIndex est explicitement défini sur 0 ou plus.

En rendant le curseur sélectionnable par défaut, les utilisateurs qui ne peuvent pas (ou ne veulent pas) utiliser une souris pourront sélectionner le contenu tronqué à l'aide de la touche de tabulation et des touches fléchées du clavier. Ce comportement n'est activé que si le conteneur de défilement ne contient aucun enfant sélectionnable au clavier.

Ce déploiement en cours a commencé dans Chrome 124 et devrait être disponible pour tous les utilisateurs à partir de Chrome 125. En savoir plus sur les défileurs sélectionnables au clavier

Sérialisation déclarative du Shadow DOM

Fonctionnalité permettant aux développeurs de sérialiser des arborescences DOM contenant des racines fantômes, récemment standardisées dans la norme HTML.

API Web

Ajouts à l'API Attribution Reporting

Des fonctionnalités ont été ajoutées à l'API Attribution Reporting pour créer des fonctionnalités de débogage supplémentaires compatibles avec les rapports de débogage des échecs d'analyse, améliorer l'ergonomie de l'API en prenant en charge un champ permettant de spécifier la plate-forme d'enregistrement préférée et améliorer la confidentialité.

API Compute Pressure

L'API Compute Pressure propose des états de haut niveau qui représentent la charge du processeur sur le système. Elle permet à la mise en œuvre d'utiliser les métriques matérielles sous-jacentes appropriées pour que les utilisateurs puissent profiter de toute la puissance de traitement à leur disposition, à condition que le système ne soit pas soumis à une contrainte ingérable. Intel a dirigé le travail de conception et d'implémentation de cette API, qui permettra aux applications de visioconférence d'équilibrer dynamiquement les fonctionnalités et les performances.

Accepter les URL HTTP(S) lors de la construction de WebSocket

Cette mise à jour active les schémas HTTP(S) dans le constructeur WebSocket, ce qui permet également aux développeurs d'utiliser des URL relatives. Celles-ci sont normalisées selon les schémas internes ws: et wss:.

Cette action lance l'extension proposée de l'API Storage Access (rétrocompatible et en phase d'évaluation) pour permettre l'accès au stockage de cookies et autres cookies non partitionnés dans un contexte tiers. L'API actuelle ne fournit l'accès qu'aux cookies, qui ont des cas d'utilisation différents de ceux du stockage non-cookie.

Exigence CORS FedCM pour le point de terminaison d'assertion d'ID

Les extractions effectuées dans l'API FedCM sont difficiles à interpréter en raison des propriétés requises. Bien qu'il existe des discussions continues sur le point de terminaison des comptes, il est également largement admis que le point de terminaison d'assertion d'ID doit utiliser CORS. Cette mise à jour aligne les propriétés de sécurité de cette extraction de plus près avec les autres extractions de la plate-forme Web. Pour en savoir plus sur le fonctionnement des exigences CORS, consultez la page Mises à jour de FedCM: Phase d'évaluation de l'API en mode Bouton, CORS et SameSite.

Action par défaut interopérable des mouvements de souris

Chrome permettait d'annuler les événements de déplacement de souris pour empêcher d'autres API comme la sélection de texte (et même le glisser-déposer par le passé). Cela ne correspond pas aux autres principaux navigateurs et n'est pas conforme aux spécifications des événements de l'interface utilisateur. Désormais, la sélection de texte n'est plus l'action par défaut du déplacement de la souris. Il est toujours possible d'empêcher la sélection de texte et le glisser-déposer en annulant les événements selectstart et dragstart respectivement.

Mises à jour de l'API Shared Storage

Cette mise à jour permet d'exécuter des Worklets de différentes origines sans qu'il soit nécessaire de créer un iFrame.

Applications Chrome

API Direct Sockets dans les applications Chrome

Cette mise à jour facilite la transition des applications spécialisées des applications Chrome vers les applications Web isolées en activant Direct Sockets dans les applications Chrome. Les applications Web peuvent ainsi établir des communications entre le protocole TCP (Direct Transmission Control Protocol) et le protocole de datagramme utilisateur (UDP) avec les appareils et systèmes réseau.

Nouvelles phases d'évaluation

À partir de Chrome 125, vous pouvez activer les nouvelles phases d'évaluation suivantes.

API FedCM en mode Bouton et utiliser l'API d'un autre compte

Cette phase d'évaluation inclut les deux API FedCM suivantes.

L'API en mode bouton permet aux sites Web d'appeler FedCM en cliquant sur un bouton, par exemple en cliquant sur un bouton Sign-in to IdP (Se connecter à l'IdP). FedCM doit donc s'assurer qu'il répond toujours avec une interface utilisateur visible, par opposition au mode Widget, qui n'affiche pas d'UI lorsque les utilisateurs se déconnectent. L'appel de l'API FedCM en mode bouton oblige les utilisateurs à se connecter à l'IdP (dans une boîte de dialogue) lorsqu'ils sont déconnectés.

En outre, comme le mode bouton est appelé lors d'un geste explicite de l'utilisateur, l'UI peut également être plus proéminente (par exemple, centrée et modale) que l'UI du mode Widget (qui n'a pas une telle intention explicite). Pour en savoir plus sur le fonctionnement de l'API en mode bouton, consultez les mises à jour de FedCM : phase d'évaluation de l'API en mode Bouton, CORS et SameSite.

L'API "Use Other Account" (Utiliser un autre compte) permet à un fournisseur d'identité d'autoriser les utilisateurs à se connecter à d'autres comptes.

Inscrivez-vous à la phase d'évaluation de FedCM.

API pliables

Cette phase d'évaluation inclut l'API Device Posture et l'API Viewport Segments Enumeration. Ces API sont conçues pour aider les développeurs à cibler les appareils pliables. Pour en savoir plus, consultez la phase d'évaluation pour les API pliables.

Inscrivez-vous pour participer à la phase d'évaluation des API Foldable.

Désactivation des aperçus multimédias

Cette phase d'évaluation à l'origine inverse exclura les sites du lancement des aperçus multimédias.

Chrome prévoit de fournir des aperçus en temps réel des entrées de caméra et de micro au moment où les autorisations d'accès à l'appareil photo et au micro sont demandées par les sites Web. Celles-ci seront également disponibles dans les informations sur la page du site.

De plus, les utilisateurs disposant de plusieurs appareils pourront sélectionner une caméra et un micro au moment où des autorisations seront demandées, sauf si le site a demandé un appareil spécifique via getUserMedia().

Cette fonctionnalité est en cours de développement simultanément avec un autre projet lié aux autorisations : les contrôles des autorisations intégrées aux pages (PEPC, Page-Embedded Permissions Controls). Les utilisateurs seront exposés à PEPC dans le cadre d'un processus de lancement indépendant impliquant une phase d'évaluation distincte ou des tests spécifiques à un site.

Essai d'abandon des propriétés et méthodes HTMLVideoElement Fullscreen précédées

Cet essai d'abandon vous permet de réactiver la prise en charge des propriétés et méthodes HTMLVideoElement avec préfixe si vous avez besoin de plus de temps pour ajuster votre code. Pour en savoir plus sur les propriétés et méthodes supprimées, consultez la section Abandons et suppressions.

S'inscrire à l'essai d'abandon de l'API Préfixe Vidéo plein écran

Ignorer l'analyse du préchargement

Ignore l'outil d'analyse de préchargement pour explorer les compromis en termes de performances pour les pages sans extraction de sous-ressources.

L'étape d'analyse de préchargement améliore les performances des pages avec des récupérations de sous-ressources, grâce à la mise en œuvre du préchargement spéculatif. Toutefois, pour les pages qui ne bénéficient pas de cette étape, c'est-à-dire sans sous-ressources, cela représente une surcharge de traitement supplémentaire avec peu d'avantages.

Pour les utilisateurs Web avancés qui souhaitent réduire ces frais généraux, ce test fournit une commande au niveau de la page permettant de désactiver l'analyseur de préchargement. Les données collectées à partir de ce test pourraient évaluer l'utilité d'une API modifiée ou d'une autre implémentation de l'outil d'analyse de préchargement HTML.

Inscrivez-vous à la phase d'évaluation pour ignorer le préchargement.

Abandons et suppressions

Accédez à ChromeStatus.com pour consulter la liste des abandons planifiés, des abandons en cours et des suppressions précédentes.

Cette version de Chrome supprime les trois fonctionnalités suivantes.

Suppression de l'alias "window-placement" pour l'autorisation et la règle d'autorisation "window-management"

Supprime l'alias "window-placement" pour l'autorisation et la règle d'autorisation "window-management". Cela s'inscrit dans une démarche plus vaste de renommer les chaînes en abandonnant et en supprimant l'option "window-placement" à terme. Ce changement de terminologie améliore la longévité du descripteur à mesure que l'API Window Management évolue.

Suppression de la règle d'entreprise: NewBaseUrlInheritanceBehaviorAllowed

La modification du code sous-jacent (activer le nouveau comportement d'héritage des URL de base) que cette règle d'entreprise remplace est activée dans des versions stables depuis août 2023 (118.0.5966.0). Étant donné que les problèmes connus ont été traités, cette règle d'entreprise sera supprimée dans Chrome 125.

Suppression des propriétés et méthodes HTMLVideoElement Fullscreen précédées

Les API plein écran HTMLVideoElement précédées du préfixe sont obsolètes depuis Chrome 38. Elles ont été remplacées par Element.requestFullscreen(), qui a été expédié pour la première fois sans préfixe en 2018 dans Chrome 71.

Les propriétés et méthodes suivantes seront supprimées de HTMLVideoElement:

  • webkitSupportsFullscreen
  • webkitDisplayingFullscreen
  • webkitEnterFullscreen()
  • webkitExitFullscreen()
  • webkitEnterFullScreen() (notez la casse différente du "S" en plein écran)
  • webkitExitFullScreen()

Inscrivez-vous à l'évaluation avant arrêt mentionnée dans cet article si votre site s'en sert toujours et que vous avez besoin de plus de temps pour mettre à jour le code.