Firefox 101 für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 101, die Entwickler betreffen werden. Firefox 101 wurde am 31. Mai 2022 veröffentlicht.
Änderungen für Webentwickler
HTML
Keine bemerkenswerten Änderungen.
CSS
-
Die
prefers-contrast
Medienfunktion, die verwendet wird, um zu erkennen, ob der Benutzer eine Präferenz für höheren (more
) oder niedrigeren (less
) Kontrast bei der Darstellung von Webinhalten angegeben hat, steht jetzt standardmäßig zur Verfügung. Diese Funktion ermöglicht es Benutzern jetzt auch, eine Farbauswahl für den Kontrast durch den neuen Wertcustom
festzulegen (Firefox-Bug 1656363). -
Drei neue Viewport-Größen wurden eingeführt: klein (
s
), groß (l
) und dynamisch (d
). Diese neuen Größen haben neue Viewport-Prozent-Längeneinheiten zusätzlich zu den bestehenden -vh
,vw
,vmax
undvmin
- hinzugefügt. Die neuen Viewport-Prozent-Längeneinheiten umfassensvh
,lvh
,dvh
,svw
,lvw
,dvw
,svmax
,lvmax
,dvmax
,svmin
,lvmin
unddvmin
(Firefox-Bug 1610815). Zusätzlich werden die Einheitenvb
undvi
jetzt standardmäßig unterstützt (Firefox-Bug 1610815). -
Unterstützung für den [
inline-size
]-Wert (/de/docs/Web/CSS/contain#inline-size) für diecontain
-Eigenschaft wurde hinzugefügt. Für weitere Informationen siehe (Firefox-Bug 1755565).
JavaScript
Keine bemerkenswerten Änderungen.
APIs
DOM
-
HTMLMediaElement.preservesPitch
wird jetzt ohne dasmoz
-Präfix unterstützt.mozPreservesPitch
ist jetzt ein Alias vonpreservesPitch
, wird aber als veraltet angesehen und könnte in zukünftigen Versionen entfernt werden (Firefox-Bug 1652950). -
HTMLInputElement.showPicker()
wird jetzt unterstützt und ermöglicht es, den Picker für ein Eingabeelement anzuzeigen, wenn ein Benutzer mit einem anderen Element, wie einem Button, interagiert (Firefox-Bug 1745005). -
DOMException
ist jetzt ein serielles Objekt, sodass es mitstructuredClone()
geklont oder zwischen Workers mitpostMessage()
kopiert werden kann (Firefox-Bug 1561357). -
Konstruktive Stylesheets werden jetzt unterstützt, was es viel einfacher macht, wiederverwendbare Stylesheets für den Einsatz mit Shadow DOM zu erstellen. Die Aktualisierung umfasst die Hinzufügung eines
CSSStyleSheet()
-Konstruktors zur Erstellung neuer Stylesheets, die MethodenCSSStyleSheet.replace()
undCSSStyleSheet.replaceSync()
, die verwendet werden können, um CSS-Regeln im Sheet hinzuzufügen/zu ersetzen, sowie die EigenschaftenDocument.adoptedStyleSheets
undShadowRoot.adoptedStyleSheets
, die verwendet werden, um Stylesheets an ein Dokument und seine Shadow-DOM-Unterbäume weiterzugeben. Weitere Informationen siehe Firefox-Bug 1520690.
Medien, WebRTC und Web Audio
-
AV1-Codec-Parameter werden jetzt in Medienunterstützungsanfragen korrekt geparst. Das bedeutet, dass
MediaCapabilities.decodingInfo()
,HTMLMediaElement.canPlayType()
undMediaSource.isTypeSupported()
nun akkurat die Unterstützung für die Wiedergabe von AV1-Quellen basierend auf den bereitgestellten Codec-Parametern berichten.MediaCapabilities.decodingInfo()
wird die Informationen auch nutzen, um eine genaue Berichterstattung zur "effizienten Dekodierung" von AV1-Videos zu liefern. Weitere Informationen siehe Firefox-Bug 1757861. -
maxFramerate
wird jetzt unterstützt, um die maximale Framerate festzulegen, die zur Sendung einer Kodierung verwendet werden kann (inRTCPeerConnection.addTransceiver()
undRTCRtpSender.setParameters()
). Beachten Sie, dass null einen gültigen Frameratenwert darstellt, aber von Firefox als "kein Frameratenlimit" interpretiert wird. Weitere Informationen siehe Firefox-Bug 1611957.
SVG
- SVG-Bilder in der Firefox-Benutzeroberfläche, die mit
prefers-color-scheme
gestylt sind, werden dascolor-scheme
des Einbettungselements berücksichtigen (zuvor ignorierteprefers-color-scheme
dascolor-scheme
des Einbettungselements und richtete sich entweder nach dem Geräte- oder Browser-Thema). Dies sorgt dafür, dass ein Favicon beispielsweise immer passend zum Thema der es umgebenden Elemente gestylt wird und nicht notwendigerweise zum (möglicherweise unterschiedlichen) Thema des Gerätes (Firefox-Bug 1764354).
WebDriver-Konformität (WebDriver BiDi, Marionette)
Mit diesem Release von Firefox wird das WebDriver BiDi-Protokoll standardmäßig aktiviert. Eine WebDriver-BiDi-Sitzung kann angefordert werden, indem WebDriver Classic (geckodriver, Marionette) verwendet und die Fähigkeit webSocketURL
capability auf true
gesetzt wird, wenn eine neue WebDriver-Sitzung erstellt wird. Diese Fähigkeit wird dann den WebSocket-Endpunkt für BiDi-Clients enthalten, um eine Verbindung herzustellen.
Die folgenden Befehle und Ereignisse stehen zur Verfügung:
-
Hinzufügung des
session
-Moduls, einschließlich einer teilweisen Implementierung der Befehle, um global Ereignisse zu abonnieren (session.subscribe
) und das Abonnement von Ereignissen aufzuheben (session.unsubscribe
), sowie die Möglichkeit, eine direkte WebDriver-BiDi-Sitzung zu erstellen (session.new
), wenn WebDriver Classic nicht verwendet wird. -
Hinzufügung des
browsingContext
-Moduls, einschließlich der Befehle zum Öffnen eines neuen Tabs oder Fensters (browsingContext.create
) oder zum Schließen eines solchen (browsingContext.close
), zum Abrufen geöffneter Browsing-Kontexte (browsingContext.getTree
) und zum Navigieren innerhalb eines Browsing-Kontextes (browsingContext.navigate
). Es gibt auch Unterstützung für das Ereignis, wenn ein Browsing-Kontext erstellt wird (browsingContext.contextCreated
). -
Hinzufügung des
log
-Moduls, einschließlich Unterstützung für Log-Ereignisse (log.entryAdded
).
Für weitere Informationen siehe die vollständige Bug-Liste.
Änderungen für Add-on-Entwickler
- Hinzufügung des
storage.StorageArea.onChanged
-Ereignisses, das es Ihnen ermöglicht, auf Änderungen im Inhalt derlocal
undsync
Speicherbereiche zu hören (Firefox-Bug 1758475). - Manifest V3 Vorschau-Funktionen:
- Hinzufügung der
scripting
-API, die Funktionen zum Ausführen eines Skripts, Einfügen und Entfernen von CSS und Verwalten der Registrierung von Content-Skripten bereitstellt (Firefox-Bug 1687764). Diese API ist für Manifest V3-Erweiterungen verfügbar und übernimmt die Funktionen zum Ausführen von Skripten und Einfügen und Entfernen von CSS aus dertabs
-API. - Hinzufügung der
action
-API, die die Funktionen derbrowserAction
-API in Manifest V3-Erweiterungen übernimmt. Entsprechende Hinzufügung des"action"
Manifest-Schlüssels und_execute_action
spezielles Shortcut zum Manifestcommands
Schlüssel. Beachten Sie, dass diebrowserAction
-API und der"browser_action"
Manifest-Schlüssel nur in Manifest V2-Erweiterungen verfügbar sind. - Die
"background"
Manifest-Schlüsseleigenschaft"persistent"
kann unter der Kontrolle von Präferenzen auffalse
gesetzt werden: für Manifest V2 dieextensions.eventPages.enabled
Präferenz und in Manifest V3 dieextensions.manifestV3.enabled
Präferenz. - Hinzufügung des
"host_permissions"
Manifest-Schlüssels, der für Manifest V3-Erweiterungen verfügbar ist. - Die Ausführungsumgebung für Content-Skripte hat sich für Manifest V3-Erweiterungen geändert:
- Content-Skripte können sich nicht mehr auf Host-Berechtigungen verlassen, um Cross-Origin-Anfragen durchzuführen. Cross-Origin-Anfragen von Content-Skripten sind mit CORS möglich.
- Das
content
-Objekt (dascontent.fetch
,content.XMLHttpRequest
undcontent.WebSocket
anbot) wurde aus der Ausführungsumgebung für Content-Skripte entfernt.
- Hinzufügung der