Version bêta de Chrome 144

Publié le 3 décembre 2025

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 ces fonctionnalités, consultez les liens fournis ou la liste sur ChromeStatus.com. Téléchargez la dernière version sur Google.com pour ordinateur ou sur le Google Play Store pour Android.

CSS et interface utilisateur

Positionnement des ancres CSS avec des transformations

Si un élément positionné par une ancre est lié à une ancre qui a une transformation (ou est contenu par un élément avec une transformation), le navigateur résout les fonctions anchor() et anchor-size() par rapport au cadre de délimitation de l'ancre transformée.

Pseudo-éléments de mise en surbrillance de la fonctionnalité Rechercher sur la page du CSS

Expose le style des résultats de recherche Rechercher sur la page en tant que pseudo-élément ::search-text, qui est un pseudo-élément de mise en surbrillance semblable à ceux utilisés pour la sélection et les fautes d'orthographe. Cela vous permet de modifier les couleurs de premier plan et d'arrière-plan, ou d'ajouter des décorations de texte. Cela est particulièrement utile si les paramètres par défaut du navigateur ne sont pas suffisamment contrastés avec les couleurs de la page ou ne conviennent pas pour d'autres raisons.

Pour en savoir plus, consultez l'article de blog Igalia sur le style de mise en surbrillance de la fonctionnalité Rechercher sur la page Styling.

N'utilisez pas aria-details pour le positionnement des ancres

Le code permettant de créer des relations aria-details pour les cas d'utilisation non pop-up du positionnement des ancres était probablement une erreur. Étant donné que les pop-up et autres relations sémantiques créent aria-details, et que les cas d'utilisation restants sont probablement non sémantiques, Chrome ne crée plus ces relations dans les cas non sémantiques.

Prise en charge du défilement @scroll-state

Vous permet de styliser les descendants de conteneurs en fonction du sens de défilement le plus récent.

Exemple :

.scrolling-up {
  translate: 80px 0;
  transition: 0.4s translate;
}

html {
  container-type: scroll-state;
}

@container scroll-state(scrolled: top) {
  .scrolling-up { translate: 0 0; }
}

Respecter overscroll-behavior pour les défilements au clavier

Lorsque vous définissez overscroll-behavior sur une valeur autre que auto, le navigateur ne doit pas effectuer de chaînage de défilement. Chrome respecte cette règle pour le défilement à la souris ou tactile. Toutefois, les défilements au clavier l'ignoraient. Cette modification garantit que le défilement au clavier respecte également overscroll-behavior.

Respecter overscroll-behavior sur les conteneurs de défilement non défilables

La propriété overscroll-behavior s'applique à tous les éléments de conteneur de défilement, que ces éléments aient un contenu en dépassement ou qu'ils soient défilables par l'utilisateur. Vous pouvez utiliser overscroll-behavior pour empêcher la propagation du défilement sur un arrière-plan overflow: hidden ou un élément overflow: auto sans avoir à vous demander s'il est en dépassement.

Correspondance container-name non limitée à l'arborescence

Le navigateur ignore la portée de l'arborescence lors de la mise en correspondance de container-name pour les requêtes @container.

Auparavant, la correspondance container-name pour les requêtes @container utilisait des noms ou des références limités à l'arborescence. Cela signifiait que le même nom ne correspondait pas si la règle @container et la propriété container-type provenaient de différentes arborescences, par exemple si la déclaration container-type provenait d'une arborescence d'ombre interne.

Avec cette modification, les valeurs container-name correspondent, quelles que soient les origines de la règle @container ou de la déclaration container-type.

Cascade CSS SVG2

Aligne l'implémentation Chrome sur la spécification SVG2 pour la mise en correspondance des règles CSS dans les <use> arborescences d'éléments.

Les sélecteurs correspondent aux éléments d'instanciation <use> au lieu de la sous-arborescence de l'élément d'origine. Cela signifie que les sélecteurs ne correspondent plus aux éléments ancêtres et frères en dehors de la sous-arborescence clonée. Plus important encore, les sélecteurs d'état tels que :hover correspondent désormais aux instances <use>.

API Web

XRVisibilityMaskChange

Ajoute un événement XRVisibilityMaskChange qui fournit une liste de sommets et d'indices pour représenter le maillage de la partie visible de la fenêtre d'affichage de l'utilisateur. Ces données peuvent être utilisées pour limiter en toute confiance la quantité de la fenêtre d'affichage dessinée, ce qui améliore les performances. Pour mieux prendre en charge cet événement, les objets XRView reçoivent également des identifiants uniques afin de faciliter l'association avec les masques associés. Il s'agit d'une extension de la spécification WebXR de base.

Exposer l'événement onanimationcancel à GlobalEventHandlers

CSS Animations Level 1 étend l'interface GlobalEventHandlers, définie dans la spécification HTML, en déclarant quatre nouveaux gestionnaires d'événements : onanimationstart, onanimationiteration, onanimationend et onanimationcancel.

Seul le gestionnaire d'événements onanimationcancel manquait dans l'IDL GlobalEventHandlers.

Pour en savoir plus, consultez la spécification CSS Animations Level 1 et la section GlobalEventHandlers de la spécification HTML.

Méthode waitUntil() de View Transitions

L'élément ViewTransition construit automatiquement une arborescence de pseudo-éléments pour afficher et animer les éléments participants dans la transition. Conformément à la spécification, cette sous-arborescence est construite lorsque la transition de vue commence à s'animer et est détruite lorsque les animations associées à tous les pseudo-éléments de transition de vue sont dans l'état terminé (ou plus précisément, dans un état non en cours d'exécution et non en pause).

Cela fonctionne dans la majorité des cas et offre une expérience fluide aux développeurs. Toutefois, pour les cas plus avancés, cela ne suffit pas, car les développeurs souhaitent parfois que le pseudo-arbre de transition de vue persiste au-delà de l'état de fin d'animation.

Par exemple, les transitions de vue sont liées aux animations pilotées par le défilement. Lorsque l'animation est contrôlée par une timeline de défilement, la sous-arborescence ne doit pas être détruite à la fin des animations, car le défilement vers l'arrière peut toujours animer les pseudo-éléments.

Pour permettre des utilisations avancées de la transition de vue, cette intention ajoute une fonction waitUntil() à l'objet ViewTransition qui prend une promesse. Cette promesse retarde la destruction du pseudo-arbre jusqu'à ce qu'il soit réglé.

L'élément <geolocation>

Présente l'élément <geolocation>, un contrôle déclaratif activé par l'utilisateur pour accéder à sa position. Il simplifie le parcours de l'utilisateur et du développeur en gérant le flux d'autorisations et en fournissant directement des données de localisation au site, ce qui élimine souvent le besoin d'un appel d'API JavaScript distinct.

Cela résout le problème de longue date des invites d'autorisation déclenchées directement à partir de JavaScript sans signal fort d'intention de l'utilisateur. En intégrant un élément contrôlé par le navigateur dans la page, le clic de l'utilisateur fournit un signal clair et intentionnel. Cela offre une meilleure expérience utilisateur pour les invites et, surtout, un chemin de récupération pour les utilisateurs qui ont précédemment refusé l'autorisation.

WebGPU : fonctionnalité subgroup_id

Les valeurs intégrées subgroup_id et num_subgroups sont disponibles lorsque l'extension de sous-groupes est activée.

WebGPU : mise en page standard du tampon uniforme

Les tampons uniformes déclarés dans les shaders WGSL ne sont plus obligatoirement alignés sur 16 octets sur les éléments de tableau ni sur les décalages de structure imbriquée sur un multiple de 16 octets.

L'API Temporal

L'API Temporal dans ECMA262 fournit des objets et des fonctions standards pour travailler avec les dates et les heures. Date est un problème de longue date dans ECMAScript. Temporal, un Object global qui sert d'espace de noms de premier niveau (par exemple, Math), apporte une API de date et d'heure moderne au langage ECMAScript. Pour une présentation détaillée des motivations, consultez Corriger la date JavaScript : Premiers pas.

Prise en charge de ping, hreflang, type et referrerPolicy pour SVGAElement

Ajoute la prise en charge des attributs ping, hreflang, type et referrerPolicy sur SVGAElement, en alignant son comportement sur HTMLAnchorElement pour une gestion cohérente des liens entre HTML et SVG.

L'événement clipboardchange

L'événement clipboardchange se déclenche chaque fois que le contenu du presse-papiers système est modifié par une application Web ou toute autre application système. Cela permet aux applications Web, par exemple les clients de bureau à distance, de synchroniser leurs presse-papiers avec le presse-papiers système. Il s'agit d'une alternative efficace à l'interrogation du presse-papiers (à l'aide de JavaScript) pour détecter les modifications.

Règle d'autorisation ch-ua-high-entropy-values pour les indicateurs client User-Agent

Ajoute la prise en charge d'une règle d'autorisation ch-ua-high-entropy-values qui permet à un site de premier niveau de limiter les documents pouvant collecter des indicateurs client à haute entropie à l'aide de l'API JavaScript navigator.userAgentData.getHighEntropyValues().

Il est déjà possible de limiter la collecte d'indicateurs à haute entropie via HTTP avec les règles d'autorisation existantes par indicateur client.

Mise en miroir des opérateurs MathML RTL

Ajoute la prise en charge de la mise en miroir au niveau des caractères et des glyphes lors du rendu des opérateurs MathML en mode RTL.

En mode RTL, certains opérateurs peuvent être mis en miroir en les remplaçant par un autre point de code (par exemple, une parenthèse droite devient une parenthèse gauche). Il s'agit d'une mise en miroir au niveau des caractères, avec des équivalences définies par la propriété Bidi_Mirrored d'Unicode.

Certains opérateurs n'ont pas de caractère de mise en miroir approprié. La mise en miroir au niveau des glyphes s'applique dans ce cas, avec la fonctionnalité de police rtlm, où un autre glyphe peut le remplacer dans un contexte mis en miroir. Certaines implémentations existantes mettent en miroir le glyphe d'origine directement, mais cela peut modifier la signification des caractères asymétriques, tels que l'intégrale de contour dans le sens des aiguilles d'une montre.

Prise en charge du multicast dans l'API Direct Sockets pour les applications Web isolées

Cette fonctionnalité permet aux applications Web isolées de s'abonner à des groupes multicast, de recevoir des paquets UDP de ces groupes et de spécifier des paramètres supplémentaires lors de l'envoi de paquets UDP à des adresses multicast.

Performances et timing des événements : InteractionCount

L'API Event Timing fait partie de la timeline des performances et mesure les performances des interactions utilisateur. Certains événements ont une valeur interactionId attribuée, ce qui est utile pour regrouper les interactions associées en fonction d'entrées ou de gestes physiques communs de l'utilisateur.

Cette fonctionnalité ajoute performance.interactionCount, qui correspond au nombre total d'interactions qui se sont produites sur la page.

En particulier, cette fonctionnalité est utile pour calculer la valeur de la métrique Interaction to Next Paint (INP), qui nécessite de connaître le nombre total d'interactions pour calculer un score de centile élevé (p98 pour les pages comportant plus de 50 interactions au total).

Cette fonctionnalité est spécifiée depuis longtemps, a été prototypée dans Chromium auparavant, mais n'a jamais été livrée. Elle fait partie d'Interop 2025 et est déjà disponible dans d'autres navigateurs.

Événements de limite de pointeur et de souris interopérables après les modifications du DOM

Une fois qu'une cible d'événement est supprimée du DOM, la cible logique du pointeur, telle qu'impliquée par les événements de limite de pointeur et de souris (c'est-à-dire les événements over, out, enter et leave), doit être l'ancêtre le plus proche encore associé au DOM.

Chrome suit un nœud même après sa suppression du DOM. Par conséquent, si le pointeur se déplace vers un nouveau nœud B après la suppression du nœud de test de positionnement A du DOM, la séquence d'événements de limite (événements pointerover, pointerout, pointerenter, pointerleave et les événements de souris correspondants) impliquait un mouvement du pointeur de A vers B. Selon le nouveau consensus, la séquence d'événements implique un mouvement du pointeur du "parent de A" vers B.

Verrouillage du pointeur sur Android

Fournit un accès au mouvement brut de la souris en verrouillant la cible des événements de souris sur un seul élément et en masquant le curseur de la souris. L'API Pointer Lock est déjà compatible avec les ordinateurs de bureau. Ce lancement concerne la prise en charge sur Android.

Valeur d'énumération RTCDegradationPreference maintain-framerate-and-resolution

maintain-framerate-and-resolution désactive l'adaptation vidéo interne de WebRTC. Cela permet à l'application d'implémenter sa propre logique d'adaptation et d'empêcher toute interférence de l'adaptation interne.

API WebAuthn Signal sur Android et iOS

Permet aux parties utilisatrices de WebAuthn de renvoyer des informations sur les clés d'accès existantes aux fournisseurs de stockage d'identifiants, afin que les identifiants incorrects ou révoqués puissent être mis à jour ou supprimés de l'interface utilisateur du fournisseur et du système.

Cette fonctionnalité était déjà disponible sur ordinateur et est désormais disponible sur Android et iOS.

De plus, l'API Signal est désormais compatible avec un mécanisme de sécurité pour les clés d'accès du Gestionnaire de mots de passe de Google sur toutes les plates-formes compatibles. Auparavant, lorsqu'une partie utilisatrice signalait qu'un identifiant était inconnu ou supprimé, la clé d'accès était définitivement supprimée. Désormais, le Gestionnaire de mots de passe de Google masque la clé d'accès au lieu de la supprimer. Les clés d'accès peuvent être récupérées en appelant signalAllAcceptedCredentials avec une liste de clés d'accès précédemment masquées.

Nouvelles phases d'évaluation

Dans Chrome 144, vous pouvez participer aux phases d'évaluation suivantes origin trials.

TextMetrics Canvas amélioré

Étend l'API Canvas TextMetrics pour prendre en charge les rectangles de sélection, les requêtes de cadre de délimitation et les opérations basées sur les clusters de glyphes.

Cette fonctionnalité permet de créer des applications d'édition de texte complexes avec une sélection précise, un positionnement du curseur et un test de positionnement. De plus, le rendu basé sur les clusters facilite les effets de texte sophistiqués, tels que les animations et les styles de caractères indépendants.

Abandons et suppressions

Cette version de Chrome introduit les abandons et les suppressions listés dans cette section. Consultez ChromeStatus.com pour obtenir des listes des abandons prévus, des abandons actuels et des suppressions précédentes.

Abandonner l'API Topics

L'API Topics est une API qui permet de cibler les annonces en fonction des centres d'intérêt généraux d'un utilisateur, sans exposer son historique de navigation exact.

Suite à l' annonce selon laquelle Chrome conservera son approche actuelle concernant les cookies tiers, nous abandonnons et prévoyons de supprimer l'API Topics (ainsi que certaines autres technologies, comme indiqué sur la page d'état des fonctionnalités de la Privacy Sandbox).

Abandonner l'API Protected Audience

L'API Protected Audience fournit une méthode de publicité par groupes d'intérêt sans cookies tiers ni suivi des utilisateurs sur les sites.

Suite à l' annonce selon laquelle Chrome conservera son approche actuelle concernant les cookies tiers, nous abandonnons et prévoyons de supprimer l'API Protected Audience (ainsi que certaines autres technologies, comme indiqué sur la page d'état des fonctionnalités de la Privacy Sandbox).

Abandonner l'API Shared Storage

L'API Shared Storage est une API Web protégeant la confidentialité qui permet un stockage non partitionné par site propriétaire.

Suite à l' annonce selon laquelle Chrome conservera son approche actuelle concernant les cookies tiers, l'équipe abandonne et prévoit de supprimer l'API Shared Storage (ainsi que certaines autres technologies, comme indiqué sur la page d'état des fonctionnalités de la Privacy Sandbox).

Abandonner l'API Attribution Reporting

L'API Attribution Reporting est une API conçue pour mesurer les conversions d'annonces sans cookies tiers ni suivi des utilisateurs sur les sites.

Suite à l' annonce selon laquelle Chrome conservera son approche actuelle concernant les cookies tiers, l'équipe prévoit d'abandonner et de supprimer l'API Attribution Reporting (ainsi que d'autres API de la Privacy Sandbox).

Abandonner l'API Private Aggregation

L'API Private Aggregation est un mécanisme générique permettant de mesurer des données agrégées multisites de manière à protéger la confidentialité. Elle a été initialement conçue pour un avenir sans cookies tiers.

Suite à l' annonce selon laquelle Chrome conservera son approche actuelle concernant les cookies tiers, l'équipe abandonne et prévoit de supprimer l'API Private Aggregation (ainsi que certaines autres technologies, comme indiqué sur la paged'état des fonctionnalités de la Privacy Sandbox). Cette API n'est exposée que via les API Shared Storage et Protected Audience, qui sont également prévues pour l'abandon et la suppression. Par conséquent, aucun travail supplémentaire n'est requis pour Private Aggregation.

Les ensembles de sites Web associés fournissent un framework permettant aux développeurs de déclarer des relations entre les sites, afin d'autoriser un accès limité aux cookies multisites à des fins spécifiques et visibles par l'utilisateur. Cela est facilité par l'utilisation de l'API Storage Access et de document.requestStorageAccessFor (voir la section suivante).

Suite à l' annonce selon laquelle Chrome conservera son approche actuelle concernant les cookies tiers, nous abandonnons et prévoyons de supprimer les ensembles de sites Web associés (ainsi que certaines autres technologies, comme indiqué sur la page d'état des fonctionnalités de la Privacy Sandbox).

Abandonner document.requestStorageAccessFor

L'API requestStorageAccessFor est une extension de l'API Storage Access qui permet à un site de premier niveau de demander l'accès à des cookies non partitionnés ("propriétaires") pour le compte de sites intégrés. Les navigateurs auraient la possibilité d'accorder ou de refuser l'accès, avec des mécanismes tels que l'appartenance à un ensemble de sites Web associés comme signal potentiel. Cela permettrait aux sites de premier niveau d'utiliser l'API Storage Access.

Suite à l' annonce selon laquelle Chrome conservera son approche actuelle concernant les cookies tiers, nous abandonnons et prévoyons de supprimer requestStorageAccessFor (ainsi que certaines autres technologies, comme indiqué sur la page d'état des fonctionnalités de la Privacy Sandbox).

Abandonner savedTabGroups en tant que valeur individuelle dans SyncTypesListDisabled

La règle d'entreprise SyncTypesListDisabled permet aux administrateurs de désactiver la synchronisation du type de données savedTabGroupssur les plates-formes de bureau. Toutefois, sur les plates-formes mobiles, la synchronisation des groupes d'onglets est déjà gérée par le type de données tabs. Pour aligner le comportement sur ordinateur avec celui sur mobile et simplifier la gestion de la synchronisation, le type de données individuel savedTabGroups est obsolète et n'est plus une valeur personnalisable individuellement dans la règle SyncTypesListDisabled.

Entités chargées en externe dans l'analyse XML

Chrome récupère de manière synchrone les entités XML externes ou les DTD et les intègre à l'analyse dans des circonstances spécifiques. Cette fonctionnalité sera supprimée.

http/tests/security/contentTypeOptions/xml-external-entity.xml fournit un exemple : les entités externes peuvent être définies dans la partie finale de l'instruction DOCTYPE et faire référence à des ressources chargées de manière synchrone et incluses en tant que contexte lors de l'analyse XML.

Un autre exemple de syntaxe est un DOCTYPE qui, à l'aide du mot clé SYSTEM suivi d'une URL pointant vers une DTD, contient des définitions d'entités supplémentaires.

Ces requêtes de chargement externes sont transmises par l'analyseur.

Selon la spécification XML du W3C, les processeurs non validants ne sont pas tenus de lire les entités externes.

L'équipe prévoit d'abandonner le chargement des définitions d'entités externes dans les documents XML qui n'utilisent pas XSLT.