Composed

Chrome 147 : les nouveautés

Chrome 147 stable est sorti le 7 avril 2026. Tour d'horizon des principales nouveautés.

Publié le par Emmanuel LASTRA 2 min de lecture

Chrome 147 : les nouveautés
Google

Chrome 147 stable est sorti le 7 avril 2026. Cette version apporte plusieurs nouveautés CSS notables, renforce les restrictions de sécurité réseau, et ajoute quelques ajouts JavaScript utiles. Tour d’horizon.

CSS border-shape

La propriété border-shape permet de définir des bordures non rectangulaires : polygones, cercles, formes personnalisées via shape()… Contrairement à clip-path qui découpe tout le contenu, border-shape ne s’applique qu’à la bordure elle-même, laissant l’intérieur intact. La propriété accepte les mêmes valeurs de formes que clip-path mais se décline en deux variantes : l’une trace une forme, l’autre remplit l’espace entre deux formes.

View Transitions à l’échelle de l’élément

Les View Transitions sont désormais disponibles sur n’importe quel élément HTML via element.startViewTransition(). L’élément définit sa propre portée de transition : les pseudo-éléments de transition sont affectés par les clips et les transformations des ancêtres, et plusieurs transitions peuvent s’exécuter simultanément sur des éléments distincts. Il est également possible d’imbriquer des transitions en cours et de conserver l’interactivité du reste de la page pendant la transition.

contrast-color()

Nouvelle fonction CSS qui retourne automatiquement black ou white selon la couleur passée en paramètre, selon celle qui offre le contraste le plus élevé. Elle peut être utilisée partout où une valeur de couleur est attendue en CSS, ce qui facilite le respect des critères d’accessibilité pour les textes dynamiques.

Pseudo-éléments et JavaScript

Deux ajouts complémentaires facilitent le travail avec les pseudo-éléments depuis JavaScript. L’interface CSSPseudoElement est désormais accessible via Element.pseudo('::after'), par exemple. Par ailleurs, la propriété .pseudoTarget est exposée sur les événements UIEvent, AnimationEvent et TransitionEvent pour indiquer si l’interaction a eu lieu sur un pseudo-élément plutôt que sur l’élément parent.

Math.sumPrecise

La méthode Math.sumPrecise() calcule la somme d’un itérable avec un algorithme précis, réduisant les erreurs d’arrondi. Elle rejoint la spécification JavaScript standard.

Sécurité réseau local

Chrome 147 étend ses restrictions d’accès au réseau local (Local Network Access). Trois nouveaux vecteurs sont désormais couverts : WindowClient.navigate() dans les service workers, WebTransport et WebSockets. Tout accès depuis un site public vers une adresse IP locale ou un loopback déclenche une demande de permission explicite. Ces restrictions sont déployées progressivement.

Analyse XML en Rust

Pour les scénarios sans XSLT, Chrome remplace libxml2 (C) par un analyseur XML écrit en Rust. L’objectif principal est sécuritaire : Rust élimine par construction les bugs de corruption mémoire qui affectent les bibliothèques C de longue date. Par ailleurs, la prise en charge de XSLT inline pour la production de SVG est dépréciée dans cette version.

En expérimentation (origin trials)

Trois fonctionnalités sont disponibles en origin trial : le prérendu d’iframes cross-origin, un événement autofill pour mieux gérer les formulaires dynamiques, et WebNN pour exploiter les capacités matérielles d’accélération du machine learning.

Notes de version complètes.