Firefox 125 Versionshinweise für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 125, die Entwickler betreffen. Firefox 125 wurde am 16. April 2024 veröffentlicht.
Änderungen für Webentwickler
>HTML
Keine bemerkenswerten Änderungen.
CSS
- Die
align-contentEigenschaft wurde aktualisiert, damit sie mitdisplay: block;Layouts funktioniert. Dies bringt alle Layout-Positionen vonflexundgridzublock, was es Entwicklern ermöglicht, Block-Elemente auszurichten, ohne ihren Container in einenflexodergrid-Container umzuwandeln. (Firefox-Bug 1882853). - Die CSS-Eigenschaft
transform-boxunterstützt jetzt die Wertecontent-boxundstroke-box. Für die Referenzbox verwendet dercontent-boxWert die Inhaltsbox und derstroke-boxWert verwendet die Rahmenbegrenzungsbox, die die Form eines SVGs enthält (Firefox-Bug 1868374). - Der CSS-Eigenschaftswert
content-visibilityautoist jetzt standardmäßig aktiviert. Dies ermöglicht es, dass Inhalte das Rendering überspringen, wenn sie für den Benutzer nicht relevant sind. (Firefox-Bug 1874874).
JavaScript
Intl.Segmenterwird jetzt unterstützt, was Entwicklern ermöglicht, eine lokalisierte Textsegmentierung eines Strings durchzuführen. Dies ermöglicht beispielsweise das Aufteilen eines Strings in Wörter in Sprachen, die keine Leerzeichen zur Trennung verwenden:Intl.Segmenter("ja-JP", { granularity: "word" }). Sie können auch Strings in Grapheme oder Sätze unterteilen. (Firefox-Bug 1423593, Firefox-Bug 1883914.)
APIs
-
Die Popover API wird jetzt vollständig unterstützt und ermöglicht die Erstellung von oberen "Popover"-Benutzeroberflächenelementen, die für Aktionsmenüs, benutzerdefinierte "Toast"-Benachrichtigungen, Formularelementvorschläge, Inhaltsauswahlen usw. verwendet werden könnten. Der Popover und seine auslösende Taste/Eingabe können entweder mit HTML-Attributen oder JavaScript erstellt und mit CSS gestaltet werden.
Die folgenden Web-APIs werden implementiert:
HTMLButtonElementEigenschaftenpopoverTargetElementundpopoverTargetAction.HTMLInputElementEigenschaftenpopoverTargetElementundpopoverTargetAction.HTMLElementEigenschaftpopover, sowie MethodenhidePopover(),showPopover(), undtogglePopover(), und Ereignissebeforetoggleundtoggle_event(vom TypToggleEvent).
Die folgende CSS-Pseudoklasse und das Element werden jetzt für die Verwendung mit Popovers unterstützt:
:popover-open::backdropwurde erweitert, um Popovers zu unterstützen
Die folgenden globalen HTML-Attribute werden unterstützt:
-
Die
RTCIceTransportEigenschaftenstateundgatheringState, und ihre zugehörigen Ereignissestatechangeundgatheringstatechange, werden jetzt unterstützt, zusammen mit derRTCDtlsTransport.iceTransportEigenschaft (die den zugrunde liegendenRTCIceTransportfür einenRTCDtlsTransportzurückgibt). Diese ermöglichen eine viel feinere Überwachung als die von denRTCPeerConnectionEigenschafteniceGatheringStateundconnectionStatebereitgestellten Möglichkeiten. (Firefox-Bug 1811912) -
Element.ariaBrailleLabelundElement.ariaBrailleRoleDescriptionwerden jetzt unterstützt, sie spiegeln die globalen ARIA-HTML-Attributearia-braillelabelundaria-brailleroledescriptionwider. (Firefox-Bug 1861201). -
Unterstützung hinzugefügt, damit Webanwendungen sich elegant erholen können, wenn ein
<canvas>seine 2D-Kontext vorübergehend verliert, was passieren kann, wenn das<canvas>hardwarebeschleunigt auf einer GPU läuft und sein Treiber abstürzt (Firefox-Bug 1887729). Hier sind einige zusätzliche Details zu den Ereignissen für verlorene und wiederhergestellte<canvas>-Kontexte:- Anwendungen können
contextlostundcontextrestoredEreignisse überwachen, die auf einemHTMLCanvasElementausgelöst werden, wenn der Kontext verloren und wiederhergestellt wird, beziehungsweise, und können auch den Kontext mitCanvasRenderingContext2D.isContextLost()überprüfen. - Nach dem Auslösen von
contextlostwird ein Browser versuchen, den verlorenen Kontext standardmäßig neu zu starten, aber der Code kann dies verhindern, indem er das Ereignis abbricht. - Offscreen Canvas können auf gleiche Weise überwacht werden, jedoch unter Verwendung der
OffscreenCanvasEreignissecontextlostundcontextrestored, zusammen mitOffscreenCanvasRenderingContext2D.isContextLost().
- Anwendungen können
-
Unterstützung für das
shadowrootclonableAttribut des<template>Elements und dieshadowRootClonableEigenschaft derHTMLTemplateElement-Schnittstelle hinzugefügt, die es widerspiegelt. Diese setzen dieclonableEigenschaft einesShadowRoot, das deklarativ mit dem<template>Element erstellt wurde. (Firefox-Bug 1880188). -
Die
readText()Methode derClipboardSchnittstelle wird jetzt unterstützt, um Text asynchron von der System-Zwischenablage zu lesen. Beim Lesen von Zwischenablagedaten, die nicht von der Seite gleicher Herkunft bereitgestellt werden, erscheint ein Einfügekontextmenü zur Bestätigung durch den Benutzer. (Firefox-Bug 1877400).
Medien, WebRTC und Web Audio
- Der AV1 Codec wird jetzt für Encrypted Media Extensions unterstützt, was hochwertigere Wiedergabe von Video-Streaming-Anbietern ermöglicht. (Firefox-Bug 1601817).
Entfernungen
- Die
SVGAElement.textEigenschaft wurde entfernt. DietextContentEigenschaft (geerbt vonNode) wird allgemein unterstützt und sollte stattdessen verwendet werden. (Firefox-Bug 1880689).
WebAssembly
- Unterstützung für Wasm-Module hinzugefügt, um mehrere unabhängige lineare Speicher zu verwenden. Mehrere Speicher ermöglichen eine effizientere Interoperabilität zwischen Modulen und bessere Polyfills für kommende Wasm-Standards. Sie können zum Beispiel verwendet werden, um separaten Speicher für interne und geteilte Daten, flüchtige und persistente Daten oder Daten, die zwischen Threads geteilt werden müssen, zu erstellen. Der Speicher kann in JavaScript erstellt und in das Wasm-Modul importiert oder im Wasm-Modul erstellt und exportiert werden. Jeder neue lineare Speicher in einer Wasm-Instanz erhält einen sequentiellen Index, der bei null beginnt. WebAssembly Speicherbefehle verwenden den Index, um den Speicher zu referenzieren, an dem sie arbeiten, und standardmäßig wird der erste definierte Speicher verwendet, wenn kein Index angegeben ist. Weitere Informationen finden Sie in WebAssembly Memory im Understanding WebAssembly text format. (Firefox-Bug 1860816).
WebDriver-Konformität (WebDriver BiDi, Marionette)
Allgemein
- Unterstützung für die "userAgent" Fähigkeit hinzugefügt, die den Standard-User-Agent-Wert des Endpunktnods identifiziert (Firefox-Bug 1885495).
WebDriver BiDi
- Unterstützung für den input.setFiles Befehl hinzugefügt, der es ermöglicht, die Dateien für
<input>-Elemente mittype="file"zu setzen oder zu aktualisieren (Firefox-Bug 1855040). - Unterstützung für den storage.deleteCookies Befehl hinzugefügt, um Cookies zu löschen (Firefox-Bug 1854581).
- Unterstützung für "userContext" als ein Feld des "partition" Arguments für Cookie-Befehle hinzugefügt (Firefox-Bug 1875255).
- Ein Problem behoben, bei dem storage.getCookies nicht alle erwarteten Cookies für einen bestimmten "sourceOrigin" abgerufen wurden (Firefox-Bug 1884647).
- Ein Problem behoben, bei dem empfohlene Präferenzen nicht angewendet wurden, wenn nur WebDriver BiDi als Remote-Protokoll, was bedeutet, dass CDP deaktiviert ist, aktiviert war (Firefox-Bug 1882748).
- Ein Problem behoben, bei dem das Erstellen und Wechseln zu einem neuen Tab nicht auf die Aktualisierung des
visibilityStategewartet hat (Firefox-Bug 1877469).
Änderungen für Add-On-Entwickler
- Der Inhalt der
proxy.ProxyInfoEigenschaftproxyAuthorizationwird jetzt an denProxy-AuthorizationAnfrage-Header gesendet, der an HTTP-Proxys (zusätzlich zur bestehenden Unterstützung für HTTPS-Proxys) als Teil einer CONNECT Anfrage gesendet wird (Firefox-Bug 1794464).
Experimentelle Web-Features
Diese Features sind in Firefox 125 enthalten, aber nur in Entwickler-Versionen oder hinter einer Präferenz. Um diese auszuprobieren, können Sie auf der about:config Seite nach der zugehörigen Präferenz suchen, um zu sehen, ob sie aktiviert oder deaktiviert sind. Um mehr über diese Features zu erfahren, siehe die Experimentelle Features Seite.
-
CSS
transition-behavior:layout.css.transition-behavior.enabled.Die
transition-behaviorEigenschaft ist standardmäßig in der Nightly Version aktiviert. Autoren können diese Eigenschaft verwenden, um zu steuern, ob CSS-Übergänge auf Eigenschaften mit einem diskreten Animationstyp angewendet werden sollen (Firefox-Bug 1882408, Firefox-Bug 1805727). -
UA-Stile für
<h1>verschachtelt in Sektions-Elemente:layout.css.h1-in-section-ua-styles.enabled.Die
<h1>-Überschrift schrumpft jetzt nicht mehr in der Schriftgröße, wenn sie in Sektions-Elementen<article>,<aside>,<nav>, und<section>verschachtelt ist. Die UA-Stile für<h1>, die in Sektions-Elementen verschachtelt sind, sind nicht mehr relevant, da der Umriss-Algorithmus aus der HTML-Spezifikation entfernt wurde. (Firefox-Bug 1883896).Hinweis: Die Präferenz für dieses Feature funktioniert umgekehrt: Sie ist auf
falsein der Nightly-Build gesetzt, was die UA-Stilierung für Überschriften in Sektions-Elementen entfernt. Sie ist auftruein allen anderen Kanälen gesetzt, was die bestehende UA-Stilierung für die verschachtelten Überschriften beibehält.