Publié le : 6 mai 2026
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, consultez les liens fournis ou la liste sur ChromeStatus.com. Chrome est en version bêta depuis le 6 mai 2026. Vous pouvez télécharger la dernière version sur Google.com pour ordinateur ou sur le Google Play Store pour Android.
CSS et UI
Supprimer la règle explicite de feuille de style UA pour la couleur des bordures des tableaux
Cette modification supprime la règle CSS border-color: gray erronée de la feuille de style UA pour l'élément <table>.
La spécification HTML ne contient pas cette règle, ce qui fait que les bordures ne sont pas définies par défaut sur currentColor. Ni Firefox ni Webkit n'ont cette règle de couleur de bordure gray dans leur feuille de style UA, ce qui entraîne des problèmes d'interopérabilité.
Prise en charge de path() et shape() dans shape-outside
Ajoute la prise en charge des fonctions de forme path() et shape() dans la propriété CSS shape-outside.
Ces fonctions permettent aux développeurs de définir la forme de shape-outside de manière plus flexible et de prendre en charge l'animation.
Mise à jour du 7 juin 2026 pour corriger la description qui faisait auparavant référence à l'utilisation de coordonnées de rectangle.
Prise en charge de rect() et xywh() dans shape-outside
Ajout de la prise en charge des fonctions de forme de base rect() et xywh() dans la propriété CSS shape-outside. Ces fonctions permettent aux développeurs de définir des formes d'exclusion flottantes à l'aide de coordonnées de rectangle, ce qui permet à Chrome de s'aligner sur Firefox et Safari, qui prennent déjà en charge cette fonctionnalité.
Couleur d'accentuation du système de portée de l'application Web
Limite l'accès à la couleur d'accentuation du système pour les mots clés CSS et accent-color: auto au contexte d'une application Web et d'un profil initial uniquement.
Les mots clés CSS AccentColor et AccentColorText constituent un vecteur d'empreinte numérique important lorsqu'ils exposent largement les couleurs du système de l'utilisateur sur le Web. Par conséquent, elles ne sont disponibles que dans les contextes d'applications Web installées. Les contrôles de formulaire avec accent-color: auto correspondent également à ce champ d'application avec le lancement de cette fonctionnalité. Cela permet d'introduire des attentes plus cohérentes pour les développeurs et les utilisateurs concernant les couleurs du système, et de s'aligner sur les restrictions d'empreintes digitales pour AccentColor[Text].
Masquer le texte qui dépasse lors de l'interaction de l'utilisateur
Lorsqu'un utilisateur interagit (modification ou navigation au clavier) avec du texte pour lequel text-overflow: ellipsis est défini, le texte passe temporairement des points de suspension à l'écrêtage, ce qui lui permet de voir et d'interagir avec le contenu masqué.
Cette fonctionnalité s'applique à tous les éléments modifiables et non modifiables. Pour les contrôles de formulaire (textarea, input), le comportement est déjà pris en charge.
Décorations d'espaces CSS
Les décorations d'espaces CSS vous permettent de styliser les espaces dans les mises en page de conteneurs comme les grilles et les flexbox, de la même manière que column-rule dans les mises en page à plusieurs colonnes. Cette fonctionnalité est très demandée par les développeurs Web qui doivent utiliser des astuces pour styliser les espaces dans les mises en page en grille et Flexbox aujourd'hui.
image-rendering: crisp-edges
image-rendering: crisp-edges indique que l'image doit être mise à l'échelle de manière à préserver le contraste et les bords, et à éviter de lisser les couleurs ou de flouter l'image.
Limite de la couche supérieure de la pseudo-classe d'action de l'utilisateur
Cette fonctionnalité représente le comportement décrit dans la spécification CSS Selectors Level 4, qui stipule que :hover, :active et :focus-within correspondent aux parents des éléments, mais uniquement jusqu'au premier élément de couche supérieure de la chaîne parente. La modification apportée à Chromium implémente cette restriction pour les éléments de couche supérieure.
Concrètement, cela signifie que dans la structure suivante, si l'utilisateur pointe sur <button>, la pseudo-classe :hover correspondra à <button> et au pop-up, mais pas à l'élément <main>.
<main>
<div popover>
<button></button>
</div>
</main>
<script>document.querySelector('[popover]').showPopover();</script>
La raison de ce changement est que les éléments de couche supérieure sont généralement rendus "ailleurs", dans un emplacement visuellement déconnecté de l'élément parent. Il n'est donc généralement pas judicieux de modifier les styles de l'élément parent lorsque l'élément de la couche supérieure est pointé ou activé, par exemple.
L'implémentation de la sélection personnalisable fournie dans Chromium a cette logique codée en dur pour le cas spécifique du pop-up de sélection ::picker(). Cette logique de cas particulier est supprimée au profit du comportement plus général de cette fonctionnalité.
Compatibilité avec path-length en tant que propriété CSS
Ce changement introduit une nouvelle propriété CSS, path-length, qui correspond à l'attribut de présentation SVG pathLength existant. Il s'applique aux éléments de géométrie SVG qui sont compatibles avec pathLength (y compris <path>, <circle>, <rect>, <line>, <polyline>, <polygon> et <ellipse>).
L'exposition de pathLength en tant que propriété CSS permet aux auteurs de la spécifier dans les feuilles de style, les styles intégrés et les animations, ce qui lui permet de participer à la cascade, à la spécificité, aux transitions et aux animations CSS normales. Cette propriété affecte tous les calculs qui dépendent de la longueur totale du chemin, y compris le rendu des tirets et le positionnement du texte le long d'un <textPath>.
Les déclarations CSS remplacent l'attribut de présentation en suivant les règles de priorité CSS standards. La valeur initiale de path-length est none, ce qui représente l'absence de longueur de chemin fournie par l'auteur et se distingue d'une valeur numérique explicite telle que 0.
Le comportement existant des attributs uniquement est conservé lorsque la fonctionnalité est désactivée.
API Web
Intl.Locale.prototype.variants
Ajoutez Intl.Locale.prototype.variants comme indiqué dans la proposition TC39 et acceptez également les "variants" dans le sac d'options du constructeur Intl.Locale comme dans la mise à jour de l'ID de langue TC39. Les modifications apportées à ECMA402 sont fusionnées dans la demande d'extraction 960 et le code de test dans test262 est fusionné dans la demande d'extraction 4474.
Promesses de défilement programmatique
Les développeurs Web n'ont actuellement aucun moyen de savoir quand un défilement fluide programmatique est terminé. Cette fonctionnalité résout le problème en faisant en sorte que les méthodes de défilement programmatique renvoient des objets Promise qui sont résolus à la fin du défilement avec l'état d'interruption.
Demande de paiement : autoriser les gestionnaires de paiement à signaler les erreurs internes
Permet aux gestionnaires de paiement auxquels l'API Payment Request accède de renvoyer des erreurs distinctes pour "l'utilisateur a annulé" et "erreur interne de l'application de paiement". Cela permet aux développeurs Web de créer de meilleurs flux pour les utilisateurs, par exemple en réessayant ou en revenant à un autre flux en cas d'erreur interne de l'application, tout en arrêtant correctement le flux si l'utilisateur souhaite l'annuler.
L'API Web-based Payment Handler peut indiquer cette différence en fonction de l'erreur utilisée pour rejeter la promesse transmise à PaymentRequestEvent.respondWith. Si la promesse est rejetée avec un OperationError, l'erreur "internal app error" (OperationError) est renvoyée au marchand à l'aide de la méthode PaymentRequest.show(). Dans le cas contraire, l'erreur "user cancel" (AbortError) est renvoyée.
L'infrastructure du gestionnaire de paiement des applications natives est également mise à jour, mais elle ne fait pas partie du champ d'application des API Web.
Respecter autocorrect="off" pour le clavier tactile Windows dans TSF
L'attribut HTML autocorrect permet aux auteurs Web de contrôler si la correction automatique doit être appliquée à l'entrée utilisateur dans les éléments modifiables, y compris <input>, <textarea> et les hôtes contenteditable. Sous Windows, le clavier tactile ignore cet attribut et corrige toujours automatiquement les mots. Par exemple, si vous saisissez "truf" suivi d'un espace dans un élément avec autocorrect="off", vous obtenez "true " au lieu de conserver "truf ". Cette fonctionnalité permet à l'intégration TSF de Chrome de détecter et d'annuler les corrections automatiques du clavier tactile lorsque l'élément modifiable sélectionné est défini sur autocorrect="off".
Déconnecter les WebSockets lors de l'entrée dans le bfcache
Les connexions WebSocket actives n'empêchent plus une page d'entrer dans le cache Back/Forward (bfcache). En fermant les connexions lors de l'entrée dans le cache bf au lieu de marquer le document comme non éligible, le navigateur permet aux pages avec des WebSockets actifs d'être stockées et restaurées.
Attribut Request.isReloadNavigation
Ajoute l'attribut booléen en lecture seule isReloadNavigation à l'interface Request de l'API Fetch. Cet attribut indique si la requête de navigation actuelle a été lancée par l'utilisateur (par exemple, à l'aide du bouton d'actualisation, location.reload() ou history.go(0)). Ce signal est principalement exposé sur l'objet Request dans le FetchEvent d'un service worker.
Désactiver les filtres SVG sur les plug-ins, ainsi que les iFrames inter-origines et restreints
Ce lancement empêche l'application de filtres SVG aux iFrames multi-origines ou restreints (par exemple, les iFrames en bac à sable) et aux plug-ins intégrés (par exemple, les PDF). Lorsqu'un frame ou un plug-in doit être peint avec un effet de filtre SVG, l'arborescence des effets est parcourue pour trouver l'ancêtre le plus élevé sans filtres SVG, et cet effet est ensuite appliqué à la place.
Nouvelles phases d'évaluation
Dans Chrome 149, vous pouvez activer les nouvelles versions d'essai d'origine suivantes.
Règle relative aux autorisations : focus-without-user-activation
Permet aux intégrateurs de contrôler la sélection programmatique à partir du contenu intégré avec la règle d'autorisation focus-without-user-activation. Lorsque la règle est refusée pour un frame, les appels de sélection programmatique (element.focus(), autofocus, window.focus(), dialog.showModal() et la sélection de pop-up) sont bloqués, sauf s'ils sont déclenchés par l'activation de l'utilisateur. La sélection initiée par l'utilisateur, comme un clic ou une tabulation, n'est jamais affectée.
La règle peut être définie à l'aide d'un en-tête de réponse HTTP Permissions-Policy ou de l'attribut allow de l'iFrame. La délégation de focus est acceptée : un frame parent qui a le focus peut le transmettre par programmation à un iframe enfant, même si la stratégie de l'enfant est refusée. Une fois qu'un frame a le focus, il peut le déplacer dans son propre sous-arbre.
API d'entrée événementielle pour les manettes de jeu
Cette proposition étend l'API Gamepad avec un nouveau modèle basé sur les événements qui permet aux applications de recevoir les entrées du gamepad avec une latence plus faible. Au lieu de s'appuyer sur un polling fréquent à l'aide de navigator.getGamepads(), les développeurs peuvent désormais écouter un événement rawgamepadinputchange, qui se déclenche chaque fois que de nouvelles données d'entrée sont disponibles sur l'appareil. Cela permet une gestion des entrées plus réactive, en particulier dans les applications sensibles à la latence.
Descripteurs personnalisés WebAssembly
Permet à WebAssembly de stocker plus efficacement les données associées aux types de niveau source dans de nouveaux objets descripteurs personnalisés. Ces descripteurs personnalisés peuvent être configurés avec des prototypes pour les objets WebAssembly de ce type de niveau source. Cela permet d'installer des méthodes sur la chaîne de prototype d'un objet WebAssembly et de les appeler directement depuis JavaScript à l'aide de la syntaxe d'appel de méthode normale. Les prototypes et les méthodes peuvent être configurés de manière déclarative à l'aide d'une fonction intégrée importée.