Firefox 151 Versionshinweise für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 151, die Entwickler betreffen. Firefox 151 wurde am 19. Mai 2026 veröffentlicht.
Änderungen für Webentwickler
>HTML
- Das
shadowrootslotassignment-Attribut wird jetzt auf<template>-Elementen unterstützt, wodurch eine deklarative Definition des Slot-Zuweisungsverhaltens für Shadow-Roots möglich ist. Das Attribut wird in JavaScript durchShadowRoot.slotAssignmentoderHTMLTemplateElement.shadowRootSlotAssignmentwidergespiegelt (Firefox-Bug 2031295, Firefox-Bug 2023824).
CSS
-
Die CSS-Regel
@containerunterstützt jetztstyle()-Abfragen. Dies ermöglicht es Ihnen zu überprüfen, ob ein Container eine gültige CSS-Deklaration, eine CSS-Eigenschaft oder eine benutzerdefinierte Eigenschaft hat, und entsprechende Stile auf seine Kinder anzuwenden. (Firefox-Bug 2016929, (Firefox-Bug 2019254), (Firefox-Bug 2024601), Firefox-Bug 2030645). -
Die
position-anchorCSS-Eigenschaft unterstützt jetzt dennormal(Standard)-Wert. Dies ermöglicht das Abgleichen derposition-area-Eigenschaft, sodass bei einer Aktualisierung derposition-area-Eigenschaft auch dieposition-anchor-Eigenschaft aktualisiert wird. (Firefox-Bug 2030351).
JavaScript
Keine bemerkenswerten Änderungen.
APIs
- Die Methode
Sanitizer.replaceElementWithChildren()gibt jetztfalsezurück, wenn das zu ersetzende Element im SVG-Namespace ein<svg>oder im MathML-Namespace ein<math>ist (zusammen mit<html>, das in Firefox 150 untersagt wurde). (Firefox-Bug 2032359). - Die Document Picture-in-Picture API wird nun auf Desktop-Plattformen unterstützt. Dies ermöglicht das Öffnen eines immer im Vordergrund befindlichen Fensters, das mit beliebigem HTML-Inhalt gefüllt werden kann. Es kann verwendet werden, um beliebige Inhalte anzuzeigen, die ein Benutzer getrennt von der Startseite (oder sogar dem Browser) sehen möchte, wie z.B. eine Reihe von Streams, die die Teilnehmer eines Videokonferenzanrufs zeigen, ein Börsenticker oder ein Countdown-Timer. (Firefox-Bug 2006594).
- Die
CanvasRenderingContext2D.lang-Eigenschaft wird jetzt unterstützt, um die Sprache des Canvas-Zeichnungskontexts festzulegen. Während ein DOM-Canvas diesen Kontext vomlang-Attribut seines zugehörigen<canvas>-Elements erben kann, ist dies nützlich, um den Kontext für ein offscreen Canvas festzulegen, das möglicherweise gerendert wird, bevor es mit einem<canvas>verbunden wird. (Firefox-Bug 1943070). - Die
options.keyboardLock-Eigenschaft kann jetzt als Option anElement.requestFullscreen()übergeben werden, sodass Websites Keyboard-Sperre anfordern können, wenn das Element im Vollbildmodus angezeigt wird. Dadurch verhindert man, dass durch die Esc-Taste das Element den Vollbildmodus verlässt (anstattdessen ist ein langes Drücken erforderlich), und einige zuvor reservierte Browser-Hotkeys können nun abgefangen und ihre Standardaktion verhindert werden. (Firefox-Bug 2032302). - Die Eigenschaften
maxStorageBuffersInFragmentStage,maxStorageBuffersInVertexStage,maxStorageTexturesInFragmentStageundmaxStorageTexturesInVertexStageaufGPUSupportedLimitswerden jetzt teilweise unterstützt. Diese Eigenschaften melden den Wert dermaxStorageBuffersPerShaderStage- undmaxStorageTexturesPerShaderStage-Grenzen. Beim Erstellen eines Geräts werden angeforderte Werte für die InStage-Grenzen ignoriert. (Firefox-Bug 2006720). - Die
CSSContainerRule.conditions-Eigenschaft wird jetzt unterstützt und spiegelt die Unterstützung für die @container-At-Regel für mehrere kommagetrennte Container-Bedingungen wider. Diecondition-Eigenschaft spiegelt ein entsprechendes@containerals ein Array von Objekten wider, wobei jedes Objekt eine einzelne Container-Bedingung darstellt. (Firefox-Bug 2022827). - Die Web Serial API wird auf Desktop-Plattformen unterstützt und ermöglicht die Steuerung von Mikrocontrollern, die serielle Kommunikation unterstützen. Dies erlaubt es Ihnen beispielsweise, Mikrocontroller und Entwicklungsboards wie ESP-Geräte, BBCmicro:bit und Raspberry Pi Picos, 3D-Drucker und CNC-Maschinen und andere unterstützte Geräte zu programmieren. Die Nutzung der API erfordert, dass Website-Benutzer ein synthetisch generiertes Website-Berechtigungs-Add-on installieren — dies ist der gleiche Ansatz, der verwendet wird, um den Zugriff auf WebMIDI sicher zu verwalten. (Firefox-Bug 2029625).
WebDriver-Konformität (WebDriver BiDi, Marionette)
Allgemein
- Unterstützung für
altitudeAngleundazimuthAnglezu Pointer-Aktionen des Subtypestouchhinzugefügt. Diese Eigenschaften ermöglichen die Simulation von Touch-Interaktionen mit präzisen Winkelorientierungsdaten, indem sie den Winkel angeben, in dem ein Zeiger eine Oberfläche berührt, und dessen Rotationsrichtung. (Firefox-Bug 2022644). - Ein Fehler wurde behoben, bei dem
UnknownErrorDOM-Ausnahmen von Inhaltsseiten fälschlicherweise als interne WebDriver-Fehler behandelt wurden. (Firefox-Bug 2032387).
WebDriver BiDi
- Der Befehl
browser.setClientWindowStatewurde implementiert. Dieser Befehl erlaubt es Clients, den OS-Level-Fensterstatus eines Browser-Fensters zu ändern, z.B. maximiert, minimiert, im Vollbild oder normal. Außerdem können Fenster neu positioniert und deren Größe geändert werden. (Firefox-Bug 1855028). - Unterstützung für Worker-Realm (für dedicated, shared und service workers) im
script.getRealms-Befehl hinzugefügt. Der Befehl gibt jetzt Realm-Informationen für Worker-Skripte zusätzlich zu Fensterkontexten zurück. (Firefox-Bug 2016097). - Das oberste Stack-Frame wurde für alle Console API-Nachrichten zu
log.entryAdded-Ereignissen hinzugefügt. (Firefox-Bug 1941813). - Das
text-Feld deslog.entryAdded-Ereignisses wurde verbessert, um besser mit dem Verhalten von Firefox DevTools und der Google Chrome WebDriver BiDi-Implementierung übereinzustimmen. (Firefox-Bug 2005054). - Netzwerk-Ereignis-Cookies wurden korrigiert, um alle Eigenschaften einzuschließen, nicht nur
nameundvalue. (Firefox-Bug 1887118). - Der Befehl
network.getDatawurde so korrigiert, dass er nicht mehr bei Umleitungen ausläuft. (Firefox-Bug 2009916). - Der Befehl
browsingContext.reloadwurde so korrigiert, dass er die Position eines navigierten iframes zurücksetzt. (Firefox-Bug 2023917). - Die leere
proxy-Fähigkeit wurde aus der Antwort dessession.new-Befehls entfernt, wenn kein Proxy angegeben ist. (Firefox-Bug 1916463).
Marionette
- Neupositionierung von Browser-Fenstern auf Linux Wayland im Headless-Modus aktiviert. (Firefox-Bug 2023978).
Änderungen für Add-on-Entwickler
- Das
webRequest.onErrorOccurred-Ereignis fällt jetzt aufNS_ERROR_NET_ON_RECEIVING_FROMzurück, anstatt auf einen String, der mitNS_ERROR_NET_ON_oderNS_ERROR_NET_UNKNOWN_beginnt. Diese Änderung ist Teil von Leistungs- und Zuverlässigkeitsverbesserungen beimonErrorOccurred-Ereignis. (Firefox-Bug 1881986) tabs.group()undtabs.ungroup()fügen jetzt korrekt eine geteilte Ansicht hinzu und entfernen sie, wenn ein Aufruf eines der Tabs der geteilten Ansicht umfasst. Zuvor schlug ein Aufruf fehl oder trennte die geteilte Ansicht. (Firefox-Bug 2029099)tabs.move()verschiebt eine geteilte Ansicht jetzt korrekt nach rechts, wenn ein Aufruf eines der Tabs der geteilten Ansicht umfasst. Zuvor konnte ein Aufruf eine geteilte Ansicht nur nach links oder an das Ende der Tab-Liste verschieben. (Firefox-Bug 2027855)
Experimentelle Web-Features
Diese Features werden in Firefox 151 ausgeliefert, sind aber standardmäßig deaktiviert.
Um mit ihnen zu experimentieren, suchen Sie im about:config-Bereich nach der entsprechenden Einstellung und setzen Sie sie auf true.
Weitere solche Features finden Sie auf der Seite Experimentelle Features.
-
@container style()-Bereichssyntax-Abfragen:layout.css.attr.enabledDie CSS-Regel
@containerstyle()-Abfragen unterstützen jetzt die Bereichssyntax. Dies ermöglicht Ihnen zu überprüfen, ob ein Container eine gültige benutzerdefinierte CSS-Eigenschaft hat und deren Wert mit Vergleichsoperatoren wie>,<,>=und<=zu vergleichen und entsprechende Stile auf seine Kinder anzuwenden. (Firefox-Bug 2024601). -
field-sizing-Eigenschaft:layout.css.field-sizing.enabledDie
field-sizingCSS-Eigenschaft ermöglicht es Ihnen, das Größenverhalten von Formularsteuerelementen zu steuern. Diese Eigenschaft hat zwei Werte:content, sodass Elemente ihre Größe an ihren Inhalt anpassen, undfixed, um eine feste Größe für Elemente festzulegen. (Firefox-Bug 1977176). -
Deaktivierung von MathML-
hrefauf nicht-<a>-Elementen:mathml.href_link_on_non_anchor_element.disabledWenn aktiviert, erstellt das globale Attribut
hrefkeine Verknüpfung auf anderen MathML-Elementen als<a>mehr, entsprechend der MathML Core Spezifikation. (Firefox-Bug 2026848). -
Behebung für verschachtelte scrollbare Bereiche:
layout.css.fake-webkit-scrollbar.enabledDiese Implementierung wurde hinzugefügt, um ein Problem zu beheben, bei dem scrollbar Inhalte nicht erreichbar waren. Wenn eine Scrollbar auf
display: none;oderwidth: 0;gesetzt ist, würden die Scrollbars verschachtelter scrollbarer Bereiche aufeinander gestapelt, was bedeutet, dass einige der Inhalte möglicherweise nicht erreichbar sind. (Firefox-Bug 1977511). -
<timeline-range-name>-Werte:layout.css.scroll-driven-animations.enabledDie CSS-Eigenschaften
animation-range-start,animation-range-endund die Kurzform-Eigenschaftanimation-rangeunterstützen jetzt<timeline-range-name>-Werte. Diese<timeline-range-name>-Werte erlauben es Ihnen, genau anzugeben, in welchem Segment eine scrollgesteuerte Animation stattfinden wird. (Firefox-Bug 1804775). -
GeometryUtils-Methoden:
convertPointFromNode(),convertRectFromNode()undconvertQuadFromNode():layout.css.convertFromNode.enabledDie GeometryUtils-Methoden:
convertPointFromNode(),convertRectFromNode()undconvertQuadFromNode()sind in Firefox Nightly standardmäßig nicht mehr aktiviert. (Firefox-Bug 2026051). -
GeometryUtils-Methoden:
getBoxQuads():layout.css.getBoxQuads.enabledDie GeometryUtils-Methode:
getBoxQuads()ist in Firefox Nightly standardmäßig nicht mehr aktiviert. (Firefox-Bug 2026051).