Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Firefox-156-Versionshinweise für Entwickler (Stable)

Dieser Artikel enthält Informationen zu den Änderungen in Firefox 156, die Entwickler betreffen. Firefox 156 wurde am 15. September 2026 veröffentlicht.

Änderungen für Webentwickler

Entwicklerwerkzeuge

  • Die Anzeige der Viewport-Größe im Highlighter des Inspektors rundet Breite und Höhe nicht mehr, wodurch zuvor bei gebrochenen Zoomstufen oder auf Displays mit hoher Pixeldichte eine irreführende Größe gemeldet wurde. (Firefox-Bug 2055445).
  • DevTools kann nun eine Verbindung zu einem Debugger-Server herstellen, der bis zu drei Versionen älter als der Client ist, gegenüber der vorherigen Begrenzung. Dies ist beim Remote-Debugging eines älteren Firefox- oder GeckoView-Builds relevant. (Firefox-Bug 2064221).

HTML

Keine nennenswerten Änderungen.

SVG

CSS

  • Das nicht standardisierte Pseudoelement ::-webkit-scrollbar wird nun in @supports-Bedingungen auf jeder Website als nicht unterstützt gemeldet, sodass @supports selector(::-webkit-scrollbar) false zurückgibt und @supports not (selector(::-webkit-scrollbar)) true zurückgibt. Dies schließt die Websites ein, die in der in Firefox 155 eingeführten Einstellung layout.css.fake-webkit-scrollbar.enabled-domains aufgeführt sind. Firefox verarbeitet auf diesen Websites weiterhin ::-webkit-scrollbar-Regeln, meldet das Pseudoelement jedoch nicht mehr als unterstützt. Websites verwenden diese Prüfung als Signal dafür, dass die gesamte Familie ::-webkit-scrollbar-* unterstützt wird, Firefox unterstützt jedoch die anderen Pseudoelemente dieser Familie nicht. Websites, die ihre Standard-Scrollbar-Stile mit @supports not (selector(::-webkit-scrollbar)) absichern, erhalten diese Stile nun in Firefox. (Firefox-Bug 2062782).
  • Die Eigenschaften text-box-trim und text-box-edge beschneiden nun in mehreren Fällen korrekt, die zuvor ein falsches Ergebnis erzeugten: Das Beschneiden verwendet die Schriftmetriken des Pseudoelements ::first-line, wenn eines angewendet wird (Firefox-Bug 2063835), bei Fragmentierung einer Inline-Box in der letzten Zeile wird die korrekte Zeile beschnitten (Firefox-Bug 2063909), und das Beschneiden einer Inline-Box entfernt nicht mehr deren Rahmen und Innenabstand (Firefox-Bug 2064596). Beachten Sie, dass text-box-trim in Kombination mit line-clamp weiterhin keine Wirkung hat.

JavaScript

  • Promise.try() löst nun den Rückgabewert des Callbacks auf dieselbe Weise auf wie Promise.resolve(), sodass ein vom Callback zurückgegebenes Promise unverändert durchgereicht wird, statt in ein neues Promise verpackt zu werden. Promise.try(() => p) ist nun dasselbe Promise wie p, wenn p ein natives Promise ist. Dies folgt einer normativen Änderung der Spezifikation. (Firefox-Bug 2062293).
  • using-Deklarationen können nicht mehr neu zugewiesen werden, entsprechend der von der Spezifikation verlangten const-ähnlichen Semantik. Zuvor konnte eine solche Bindung stillschweigend geändert werden. (Firefox-Bug 2040286).

Sicherheit

  • Die Finite-Field-Diffie-Hellman-Gruppen ffdhe2048 und ffdhe3072 werden bei TLS-Handshakes standardmäßig nicht mehr angeboten. Server, die ausschließlich diese Gruppen unterstützen, können keine Verbindung mehr aushandeln; nahezu alle Server unterstützen stattdessen den ECDHE-Schlüsselaustausch. (Firefox-Bug 1992340).

APIs

  • SubtleCrypto.deriveBits() löst nun einen TypeError aus, wenn der übergebene Parameter length NaN, Infinity, negativ oder größer als 232−1 ist. Zuvor wurden diese Werte entweder akzeptiert oder das zurückgegebene Promise mit einem OperationError abgelehnt. (Firefox-Bug 2065212).
  • Scheduler.yield() übernimmt nun die Priorität und das Abbruchsignal der umschließenden Task über ein await hinweg, das synchron erfüllt wird, beispielsweise durch ein bereits aufgelöstes Promise, einen Nicht-Promise-Wert oder einen then()-Callback auf einem erfüllten Promise. Zuvor verlor die Fortsetzung in diesen Fällen den übernommenen Zustand und fiel stillschweigend auf die Standardpriorität user-visible zurück.

DOM

Medien, WebRTC und Web Audio

WebDriver-Konformität (WebDriver BiDi, Marionette)

Allgemein

  • Marionette und RemoteAgent verwenden nun beide einen benutzerdefinierten Exit-Code (69), wenn ihr Server nicht gestartet werden kann. (Firefox-Bug 2040974).
  • Das Timing von Zwischenereignissen für Aktionen mit einer Dauer größer als 0 wurde verbessert, um näher an einem Intervall von 16 ms zu liegen und eine Aufblähung der Gesamtdauer zu vermeiden, selbst wenn der Content-Prozess überlastet ist. (Firefox-Bug 2054442).

WebDriver BiDi

  • browsingContext.startScreencast wählt nun sicher einen gültigen Download-Ordner aus und sollte keinen Fehler mehr auslösen, wenn der Standard-Download-Ordner (DfltDwnld) nicht verfügbar ist. (Firefox-Bug 2066782).
  • Das Mozilla-spezifische Modul moz:debugging wurde korrigiert, um verschachtelte Pausen korrekt zu verarbeiten. (Firefox-Bug 2060460).

Marionette

  • Der Befehl WebDriver:GetElementTagName wurde aktualisiert, um den neuesten Spezifikationsänderungen zu entsprechen, und gibt nun den qualifizierten Namen des DOM-Elements zurück. Dieser Befehl wandelte den Rückgabewert zuvor immer in Kleinbuchstaben um. In der Praxis ist diese Änderung für HTML-Elemente abwärtskompatibel, für Elemente mit einem groß-/kleinschreibungssensitiven qualifizierten Namen, etwa SVG-Elemente, jedoch nicht abwärtskompatibel. (Firefox-Bug 2026697).

Änderungen für Add-on-Entwickler

  • Der Manifest-Schlüssel theme fügt die Eigenschaft backgrounds_area hinzu. Diese Eigenschaft ermöglicht es einem Theme festzulegen, wo dessen Hintergrundbilder und Farbverläufe gezeichnet werden. Wenn sie auf "window" gesetzt ist, werden sie über das gesamte Browserfenster gezeichnet, während "top_toolbars" sie auf die horizontalen Symbolleisten am oberen Fensterrand beschränkt. Wenn backgrounds_area ausgelassen oder auf "auto" gesetzt wird, wählt Firefox den Bereich anhand von properties.additional_backgrounds_alignment aus. (Firefox-Bug 2059526)

Experimentelle Webfunktionen

Diese Funktionen werden in Firefox 156 ausgeliefert, sind jedoch standardmäßig deaktiviert. Um mit ihnen zu experimentieren, suchen Sie auf der Seite about:config nach der entsprechenden Einstellung und setzen Sie sie auf true. Weitere solche Funktionen finden Sie auf der Seite Experimentelle Funktionen.

  • Bereichsspezifische Custom-Element-Registries (Nightly): dom.scoped-custom-element-registries.enabled

    Bereichsspezifische Custom-Element-Registries werden nun unterstützt, sodass eine Shadow-Root Custom Elements definieren kann, die nicht mit den in der globalen Registry definierten kollidieren. Diese Version aktiviert die Funktion standardmäßig in Nightly-Builds. (Firefox-Bug 2064333).

  • named-feature()-Support-Abfragen: layout.css.anchor-positioning.follows-transforms.enabled

    Die Funktion named-feature() in der @supports-At-Regel ermöglicht es Ihnen zu prüfen, ob der Browser eine Funktion unterstützt, die keine andere erkennbare Syntax hat, beispielsweise @supports named-feature(anchor-position-follows-transforms). (Firefox-Bug 2042977 und Firefox-Bug 2055354).

  • Container Timing API: dom.enable_container_timing

    Die Container Timing API meldet, wann die Inhalte eines Container-Elements gerendert werden, sodass Sie die Renderzeit eines Bereichs der Seite statt des gesamten Viewports messen können. (Firefox-Bug 1940240).