Firefox 150 note de version pour les développeurs
Cet article présente les informations concernant les changements de Firefox 150 qui concernent les développeur·euse·s. Firefox 150 est sorti le 21 avril 2026 (angl.).
Changements pour les développeur·euse·s web
>Outils de développement
- Un message spécifique est désormais affiché dans l'onglet Réponse du panneau Réseau (angl.) pour indiquer pourquoi il n'y a pas de données de réponse lorsqu'une requête a été redirigée. (bogue Firefox 2016679 (angl.)).
- Une nouvelle section « Pseudo-classes spécifiques aux éléments » a été ajoutée au panneau de bascule des pseudo-classes (angl.), incluant une bascule pour la pseudo-classe
:open, qui n'est disponible que pour les éléments ayant un état ouvert comme les éléments<dialog>. La bascule existante pour la pseudo-classe:visiteda également été déplacée, car elle ne s'applique qu'aux éléments<a>et<area>. (bogue Firefox 2014442 (angl.)).
HTML
- Le mot-clé
"auto"est désormais pris en charge comme option pour l'attributsizesdes éléments<img>(etHTMLImageElement.sizes). Cela permet aux éléments<img>chargés paresseusement d'utiliser la taille de mise en page de l'image calculée, après l'application de tout CSS, pour sélectionner l'image à afficher à partir d'unsrcset. Cela est plus simple que de définir des conditions de média et leurs tailles associées dans l'attribut, ce qui duplique probablement le comportement déjà capturé dans les requêtes média CSS. (bogue Firefox 1819581 (angl.)).
CSS
-
La fonction CSS
color-mix()accepte désormais plusieurs valeurs<color>, et pas seulement deux. Cela permet de mélanger un nombre quelconque de couleurs. (bogue Firefox 2024171 (angl.)). -
La fonction CSS
light-dark()accepte désormais des valeurs<image>. Cela permet d'utiliser des images, des dégradés, etc. pour différents schémas de couleurs. (bogue Firefox 2023569 (angl.)). -
Les pseudo-classes basées sur les médias
:buffering,:muted,:paused,:playing,:seeking,:stalledet:volume-lockedsont désormais prises en charge. Elles permettent de mettre en forme les éléments<audio>et<video>en fonction de leur état actuel, comme en lecture ou en pause. (bogue Firefox 2020775 (angl.)). -
Les propriétés
animation-range-startetanimation-range-end(ainsi que la propriété abrégéeanimation-range) sont désormais prises en charge. Ces propriétés définissent le début et la fin de la plage d'attachement d'une animation le long de sa chronologie, ce qui vous permet de contrôler à quel moment de la chronologie d'une animation pilotée par le défilement va commencer et se terminer. (bogue Firefox 1825427 (angl.)). -
Le mot-clé CSS
revert-ruleest désormais pris en charge. Il permet de déterminer la valeur d'une propriété comme si la règle de style actuelle n'avait pas été présente, de sorte que la valeur d'une autre règle correspondante puisse s'appliquer à la place. (bogue Firefox 2017307 (angl.)). -
La propriété CSS
overscroll-behavior(et ses propriétés longuesoverscroll-behavior-x,overscroll-behavior-y,overscroll-behavior-blocketoverscroll-behavior-inline) s'applique désormais correctement aux conteneurs de défilement qui n'ont pas de débordement défilable, comme les éléments avecoverflow: hidden. Auparavant, la propriété était ignorée sur de tels éléments. (bogue Firefox 1837436 (angl.)).
JavaScript
Pas de changements notables.
APIs
- La méthode
Sanitizer.replaceElementWithChildren()retourne désormaisfalsesi l'élément à remplacer est<html>dans l'espace de noms HTML. En d'autres termes, vous ne pouvez pas utiliser cette méthode pour créer unSanitizerqui remplacera l'élément<html>par son contenu interne. (bogue Firefox 2022176 (angl.)).
DOM
-
L'argument
options.shadowRootsde la méthodeDocument.caretPositionFromPoint()est désormais pris en charge. Cela permet à la méthode de retourner le nœud contenant le curseur à l'intérieur d'un DOM d'ombre, à condition que sonShadowRootassocié ait été passé en option. (bogue Firefox 1914596 (angl.)). -
L'interface
CSSFontFaceDescriptorsest désormais prise en charge, et une instance de ce type est retournée par la propriétéCSSFontFaceRule.style. (bogue Firefox 2019904 (angl.)). -
La méthode non standard
caretRangeFromPoint()de l'interfaceDocumentest désormais prise en charge. (bogue Firefox 1550635 (angl.)). -
La méthode
ariaNotify()est désormais prise en charge sur les interfacesDocumentetElement. Cela permet de mettre en file d'attente une chaîne de texte à annoncer par un lecteur d'écran, offrant une alternative plus ergonomique et fiable aux régions ARIA dynamiques. (bogue Firefox 2018095 (angl.)).
Conformité WebDriver (WebDriver BiDi, Marionette)
Général
- Correction d'un problème où la fermeture du navigateur avec des téléchargements en attente pouvait être bloquée par une invite. L'invite est désormais rejetée automatiquement. (bogue Firefox 2003840 (angl.)).
WebDriver BiDi
- Ajout de la commande
emulation.setNetworkConditions, qui prend en charge le typeofflinepour le moment. Cela permet d'émuler le mode hors ligne soit sur des contextes de navigation spécifiques, sur des contextes utilisateur (a.k.a. conteneurs) ou globalement. (bogue Firefox 1993079 (angl.)). - Amélioration de la prise en charge des valeurs d'en-tête non UTF-8 dans toutes les commandes et évènements du module
network. Elles sont désormais correctement sérialisées enBytesValue. (bogue Firefox 1994996 (angl.)). - Correction d'un bogue pour les évènements de téléchargement déclenchés par une réponse avec l'en-tête "Content-Disposition". Ces évènements ne comportaient pas la propriété
navigationsi le téléchargement était initié par un lien avectarget="_blank". (bogue Firefox 1999481 (angl.)). - Mise à jour de l'évènement
log.entryAddedpour qu'il ne soit émis que pour les appels à l'API console qui affichent réellement un message dans les outils de développement du navigateur (voir également la spécification de la console : utilisation de l'imprimante (angl.)). Avec ce changement, l'utilisation deconsole.clearouconsole.timene déclenche plus d'évènement. (bogue Firefox 1866749 (angl.)). - Correction d'une condition de concurrence avec la commande
browsingContext.setViewportqui pouvait entraîner un dépassement de délai si plusieurs contextes étaient créés en parallèle. (bogue Firefox 2019511 (angl.)). - Amélioration de la commande
browsingContext.locateNodespour permettre de récupérer l'élément HTML (documentElement) d'une page lors de l'utilisation du localisateurcss. (bogue Firefox 2020578 (angl.)).
Marionette
- Correction de la commande
WebDriver:getShadowRootpour qu'elle ne retourne plus les racines d'ombre spécifiques à l'agent utilisateur. (bogue Firefox 2016741 (angl.)).
Changements pour les développeur·euse·s d'extensions
- Le comportement de
tabs.moveest mis à jour pour les vues fractionnées afin que :- L'ordre des onglets dans une vue fractionnée puisse être échangé. (bogue Firefox 2016762 (angl.))
- Lorsque la liste des onglets inclut à la fois des onglets de vue fractionnée et place un ou plusieurs onglets entre eux, les onglets sont déplacés et la vue fractionnée est fermée. (bogue Firefox 2022549 (angl.))
- Résolution d'un problème avec certains appels JavaScript
importéchouant à importer du CSS. (bogue Firefox 2016369 (angl.))
Fonctionnalités web expérimentales
Ces fonctionnalités sont livrées dans Firefox 150 mais sont désactivées par défaut.
Pour les tester, recherchez la préférence appropriée dans la page about:config et définissez-la sur true.
Vous pouvez en trouver d'autres sur la page Fonctionnalités expérimentales.
-
Attributs avec espace de noms dans la fonction CSS
attr():layout.css.attr.enabledLa fonction CSS
attr()prend désormais en charge les attributs avec espace de noms. Cela vous permet de prendre des attributs d'éléments de langages basés sur XML, tels que SVG et de les mettre en forme en conséquence. (bogue Firefox 2014060 (angl.)) -
Requêtes
@container style()(Nightly) :layout.css.style-queries.enabledLa règle CSS
@containerprend en charge les requêtesstyle(). Cela a été mis à jour pour prendre en charge l'imbrication des requêtesstyle(). (bogue Firefox 2014098 (angl.)). -
Les éléments positionnés en absolu dans les conteneurs à colonnes multiples et lors de l'impression :
layout.abspos.fragmentainer-aware-positioning.enabledLes éléments positionnés en absolu à l'intérieur des conteneurs à colonnes multiples et lors de l'impression sont désormais correctement positionnés et fragmentés. Cela améliore l'interopérabilité avec d'autres navigateurs et empêche les problèmes de mise en page tels que le chevauchement du texte ou la perte de contenu. (bogue Firefox 2018797 (angl.)).
-
Registres d'éléments personnalisés à portée limitée :
dom.scoped-custom-element-registries.enabledLa propriété
customElementRegistryest prise en charge surDocument,ElementetShadowRoot. Cela permet la définition de registres d'éléments personnalisés à portée limitée. (bogue Firefox 2018900 (angl.)). -
Tableaux associatifs d'importations multiples :
dom.multiple_import_maps.enabledLes tableaux associatifs d'importations multiples offrent aux développeur·euse·s plus de flexibilité lors de la structuration et du chargement des modules JavaScript. (bogue Firefox 1916277 (angl.)).