Firefox 125 für Entwickler
Dieser Artikel bietet Informationen zu den Ä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 Eigenschaft
align-content
wurde aktualisiert, um mitdisplay: block;
Layouts zu arbeiten. Dies bringt alle Layoutpositionen vonflex
undgrid
zublock
, wodurch Entwickler Block-Elemente ausrichten können, ohne ihren Container in einenflex
odergrid
Container konvertieren zu müssen. (Firefox Bug 1882853). - Die CSS-Eigenschaft
transform-box
unterstützt nun die Wertecontent-box
undstroke-box
. Für die Referenzbox verwendet dercontent-box
Wert die Inhaltsbox und derstroke-box
Wert benutzt die Konturbegrenzung, die die Form eines SVGs enthält (Firefox Bug 1868374). - Der CSS-Eigenschaftswert
content-visibility
auto
ist jetzt standardmäßig aktiviert. Dies ermöglicht es, das Rendering von Inhalten zu überspringen, wenn sie nicht relevant für den Benutzer sind. (Firefox Bug 1874874).
JavaScript
Intl.Segmenter
wird jetzt unterstützt, was es Entwicklern ermöglicht, eine ortsabhängige Textsegmentierung eines Strings durchzuführen. Dies ermöglicht beispielsweise das Teilen 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 aufteilen. (Firefox Bug 1423593, Firefox Bug 1883914.)
APIs
-
Die Popover API wird jetzt vollständig unterstützt und ermöglicht die Erstellung von Benutzeroberflächen-Elementen auf oberster Ebene, dass für Aktionsmenüs, benutzerdefinierte "Toast"-Benachrichtigungen, Vorschläge für Formularelemente, Inhaltsauswahlen usw. verwendet werden kann. Das Popover und sein auslösendes Button/Input-Element können entweder mit HTML-Attributen oder JavaScript erstellt und mittels CSS gestaltet werden.
Die folgenden Web-APIs sind implementiert:
HTMLButtonElement
EigenschaftenpopoverTargetElement
undpopoverTargetAction
.HTMLInputElement
EigenschaftenpopoverTargetElement
undpopoverTargetAction
.HTMLElement
Eigenschaftpopover
,hidePopover()
,showPopover()
, undtogglePopover()
Methoden, sowiebeforetoggle
undtoggle_event
Ereignisse (vom TypToggleEvent
).
Die folgende CSS-Pseudo-Klasse und das Element werden jetzt für die Verwendung mit Popovers unterstützt:
:popover-open
::backdrop
wurde erweitert, um Popovers zu unterstützen
Die folgenden globalen HTML-Attribute werden unterstützt:
-
Die
RTCIceTransport
Eigenschaftenstate
undgatheringState
, und deren zugehörige Ereignissestatechange
undgatheringstatechange
, werden nun zusammen mit derRTCDtlsTransport.iceTransport
Eigenschaft unterstützt (die das zugrunde liegendeRTCIceTransport
für einRTCDtlsTransport
zurückgibt). Diese bieten eine viel feinere Überwachung als dieRTCPeerConnection
EigenschafteniceGatheringState
undconnectionState
. (Firefox Bug 1811912). -
Element.ariaBrailleLabel
undElement.ariaBrailleRoleDescription
werden nun unterstützt und geben die globalen ARIA HTML-Attributearia-braillelabel
undaria-brailleroledescription
wieder. (Firefox Bug 1861201). -
Unterstützung hinzugefügt, um es Webanwendungen zu ermöglichen, sich grazil zu erholen, wenn ein Canvas vorübergehend seinen 2D-Kontext verliert, was passieren kann, wenn das Canvas hardwarebeschleunigt auf einer GPU läuft und dessen 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 Ereignisse für
contextlost
undcontextrestored
überwachen, die auf demHTMLCanvasElement
ausgelöst werden, wenn der Kontext verloren geht und wiederhergestellt wird, und können den Kontext auch mitCanvasRenderingContext2D.isContextLost()
überprüfen. - Nachdem
contextlost
gesendet wurde, versucht ein Browser standardmäßig den verlorenen Kontext neu zu starten, aber der Code kann dies verhindern, indem er das Ereignis abbricht. - Offscreen-Canvas können auf die gleiche Weise überwacht werden, jedoch unter Verwendung der
OffScreenCanvas
Ereignissecontextlost
undcontextrestored
, zusammen mitOffscreenCanvasRenderingContext2D.isContextLost()
.
- Anwendungen können Ereignisse für
-
Unterstützung für das
shadowrootclonable
Attribut des<template>
Elements und dieshadowRootClonable
Eigenschaft derHTMLTemplateElement
Schnittstelle, die es widerspiegelt, hinzugefügt. Diese legen dieclonable
Eigenschaft einesShadowRoot
fest, die deklarativ mit dem<template>
Element erstellt wurde. (Firefox Bug 1880188). -
Die
readText()
Methode derClipboard
Schnittstelle wird nun unterstützt, um Text asynchron aus der System-Zwischenablage zu lesen. Beim Lesen von Zwischenablagedaten, die nicht von derselben Ursprungsseite bereitgestellt werden, erscheint ein Einfüge-Kontextmenü, das den Benutzer um Bestätigung bittet. (Firefox Bug 1877400).
Medien, WebRTC und Web Audio
- Der AV1 Codec wird jetzt für Encrypted Media Extensions unterstützt, was eine qualitativ hochwertigere Wiedergabe von Video-Streaming-Anbietern ermöglicht. (Firefox Bug 1601817).
Entfernungen
- Die
SVGAElement.text
Eigenschaft wurde entfernt. DietextContent
Eigenschaft (vomNode
geerbt) wird weithin unterstützt und sollte stattdessen verwendet werden. (Firefox Bug 1880689).
WebAssembly
- Unterstützung wurde hinzugefügt, damit Wasm-Module mehrere unabhängige lineare Speicher verwenden können. Mehrere Speicher ermöglichen eine effizientere Interoperabilität zwischen Modulen und bessere Polyfills für kommende Wasm-Standards. Sie können beispielsweise verwendet werden, um separaten Speicher für interne und gemeinsame Daten, flüchtige und dauerhafte 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 fortlaufenden Index, beginnend bei Null. WebAssembly Speicheranweisungen verwenden den Index, um den Speicher zu referenzieren, auf dem sie operieren, standardmäßig wird der erste definierte Speicher verwendet, wenn kein Index angegeben ist. Weitere Informationen finden Sie unter WebAssembly Memory in 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 Standardwert des User-Agents des Endpunktknotens identifiziert (Firefox Bug 1885495).
WebDriver BiDi
- Unterstützung für den input.setFiles Befehl hinzugefügt, der das Setzen oder Aktualisieren der Dateien für
<input>
Elemente mittype="file"
ermöglicht (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 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 gegebenen „sourceOrigin“ abrufen würde (Firefox Bug 1884647).
- Ein Problem behoben, bei dem empfohlene Einstellungen nicht angewendet werden würden, wenn nur WebDriver BiDi als Fernprotokoll aktiviert war, was bedeutet, dass CDP deaktiviert war (Firefox Bug 1882748).
- Ein Problem behoben, bei dem das Erstellen und Wechseln zu einem neuen Tab nicht auf die Aktualisierung des
visibilityState
warten würde (Firefox Bug 1877469).
Änderungen für Add-on-Entwickler
- Der Inhalt der
proxy.ProxyInfo
EigenschaftproxyAuthorization
wird jetzt an denProxy-Authorization
Request-Header gesendet, der an HTTP-Proxies (zusätzlich zur bestehenden Unterstützung für HTTPS-Proxies) als Teil einer CONNECT Anfrage gesendet wird (Firefox Bug 1794464).
Experimentelle Web-Features
Diese Features werden in Firefox 125 ausgeliefert, jedoch nur in Entwickler-Releases oder hinter einer Präferenz. Um diese auszuprobieren, können Sie nach der zugehörigen Präferenz auf der about:config
Seite suchen, um zu sehen, ob sie aktiviert oder deaktiviert sind. Um mehr über diese Features zu erfahren, siehe die Seite Experimentelle Features.
-
CSS
transition-behavior
:layout.css.transition-behavior.enabled
.Die
transition-behavior
Eigenschaft 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 Gliederungselementen:layout.css.h1-in-section-ua-styles.enabled
.Der
<h1>
Überschrift verringert sich jetzt nicht mehr in der Schriftgröße, wenn er innerhalb von sectioning elements<article>
,<aside>
,<nav>
, und<section>
verschachtelt ist. Die UA-Stile für<h1>
innerhalb von Gliederungselementen sind nicht mehr relevant, da der Outline-Algorithmus aus der HTML-Spezifikation entfernt wurde. (Firefox Bug 1883896).Hinweis: Die Präferenz für dieses Feature funktioniert umgekehrt: Sie ist in der Nightly-Version auf
false
gesetzt, was die UA-Stilisierung für Überschriften entfernt, die in Gliederungselementen verschachtelt sind. In allen anderen Kanälen ist sie auftrue
gesetzt, was die bestehende UA-Stilisierung für die verschachtelten Überschriften beibehält.