Experimentelle Funktionen in Firefox
Diese Seite listet die experimentellen und teilweise implementierten Funktionen von Firefox auf, einschließlich derjenigen für vorgeschlagene oder hochmoderne Webplattformstandards, zusammen mit Informationen über die Builds, in denen sie vorhanden sind, ob sie "standardmäßig" aktiviert sind oder nicht, und welche Einstellung verwendet werden kann, um sie zu aktivieren oder zu deaktivieren. Dies ermöglicht es Ihnen, die Funktionen zu testen, bevor sie veröffentlicht werden.
Neue Funktionen erscheinen zuerst im Firefox Nightly Build, wo sie häufig standardmäßig aktiviert sind. Sie werden später in die Firefox Developer Edition und schließlich in den Release-Build übernommen. Nachdem eine Funktion standardmäßig im Release-Build aktiviert ist, wird sie nicht mehr als experimentell angesehen und sollte aus dem Thema entfernt werden.
Experimentelle Funktionen können mithilfe des Firefox-Konfigurationseditors (geben Sie about:config
in die Firefox-Adressleiste ein) aktiviert oder deaktiviert werden, indem Sie die zugehörige unten aufgeführte Einstellung ändern.
Hinweis:
Für Redakteure - Wenn Sie Funktionen zu diesen Tabellen hinzufügen, versuchen Sie bitte, einen Link zu den relevanten Bugs oder Bug(s) mit [Firefox bug <number>](https://bugzil.la/<number>)
aufzunehmen.
HTML
Autokorrektur von editierbaren Textelementen
Das HTML-Attribut autocorrect
(und die entsprechende HTMLElement.autocorrect
Eigenschaft) ermöglichen die Autokorrektur in editierbaren Textelementen, einschließlich: der meisten Arten von Text-<input>
-Elementen, <textarea>
-Elementen und Elementen, die das Attribut contenteditable
haben (Firefox bug 1725806).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 134 | Ja |
Developer Edition | 134 | Nein |
Beta | 134 | Nein |
Release | 134 | Nein |
Einstellungsname | dom.forms.autocorrect |
Layout für input type="search"
Das Layout für input type="search"
wurde aktualisiert. Dies bewirkt, dass ein Suchfeld ein Löschsymbol hat, sobald jemand darin zu tippen beginnt, um andere Browserimplementierungen anzupassen. (Siehe Firefox bug 558594 für mehr Details.)
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 81 | Nein |
Developer Edition | 81 | Nein |
Beta | 81 | Nein |
Release | 81 | Nein |
Einstellungsname | layout.forms.input-type-search.enabled |
Umschalten der Passwortanzeige
HTML-Passwort-Eingabeelemente (<input type="password">
) enthalten ein "Auge"-Symbol, das umgeschaltet werden kann, um den Passworttext anzuzeigen oder zu verbergen (Firefox bug 502258).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 96 | Nein |
Developer Edition | 96 | Nein |
Beta | 96 | Nein |
Release | 96 | Nein |
Einstellungsname | layout.forms.reveal-password-button.enabled |
Nur-Text contenteditable-Modus
Der Wert plaintext-only
des globalen Attributs contenteditable
gibt an, dass das Element editierbar ist; die Formatierung von Rich-Text ist deaktiviert und jede Formatierung in eingefügtem Text wird automatisch entfernt. (Siehe Firefox bug 1922723 für mehr Details.)
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 133 | Ja |
Developer Edition | 135 | Ja |
Beta | 135 | Ja |
Release | 133 | Nein |
Einstellungsname | dom.element.contenteditable.plaintext-only.enabled |
CSS
Hex-Boxen zur Anzeige von Steuerzeichen
Diese Funktion rendert Steuerzeichen (Unicode-Kategorie Cc) außer Tab (U+0009
), Zeilenumbruch (U+000A
), Seitenvorschub (U+000C
) und Wagenrücklauf (U+000D
) als Hex-Box, wenn sie nicht erwartet werden. (Siehe Firefox bug 1099557 für mehr Details.)
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 43 | Ja |
Developer Edition | 43 | Nein |
Beta | 43 | Nein |
Release | 43 | Nein |
Einstellungsname |
layout.css.control-characters.visible
|
initial-letter Eigenschaft
Die initial-letter
CSS-Eigenschaft ist Teil der CSS Inline Layout Spezifikation und erlaubt es Ihnen, festzulegen, wie fallende, hervorgehobene und versunkene Anfangsbuchstaben angezeigt werden. (Siehe Firefox bug 1223880 für mehr Details.)
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 50 | Nein |
Developer Edition | 50 | Nein |
Beta | 50 | Nein |
Release | 50 | Nein |
Einstellungsname | layout.css.initial-letter.enabled |
fit-content() Funktion
Die fit-content()
-Funktion, wie sie auf width
und andere Größenangaben angewendet wird. Diese Funktion wird bereits gut für CSS Grid Layout Track Sizing unterstützt. (Siehe Firefox bug 1312588 für mehr Details.)
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 91 | Nein |
Developer Edition | 91 | Nein |
Beta | 91 | Nein |
Release | 91 | Nein |
Einstellungsname | layout.css.fit-content-function.enabled |
Scrollbasierte Animationen
Früher "scroll-verknüpfte Animationen" genannt, hängt eine scrollbasierte Animation von der Scrollposition einer Bildlaufleiste ab, statt von der Zeit oder einer anderen Dimension. Die scroll-timeline-name
und scroll-timeline-axis
Eigenschaften (und die Kurzform scroll-timeline
) erlauben es Ihnen, zu bestimmen, dass eine bestimmte Scrollleiste in einem bestimmten benannten Container als Quelle für eine scrollbasierte Animation verwendet werden kann. Die Scroll-Zeitleiste kann dann mit einer Animation verknüpft werden, indem die Eigenschaft animation-timeline
auf den in scroll-timeline-name
definierten Namenwert gesetzt wird.
Bei Verwendung der Kurzform-Eigenschaft scroll-timeline
muss die Reihenfolge der Eigenschaftswerte scroll-timeline-name
gefolgt von scroll-timeline-axis
sein. Die Lang- und Kurzform-Eigenschaften sind beide hinter der Einstellung verfügbar.
Alternativ können Sie die funktionale Notation scroll()
mit animation-timeline
verwenden, um anzugeben, dass eine Scrollleistenachse in einem Vorfahrenelement für die Zeitleiste verwendet wird.
Für weitere Informationen siehe Firefox bug 1807685, Firefox bug 1804573, Firefox bug 1809005, Firefox bug 1676791, Firefox bug 1754897 und Firefox bug 1737918.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 110 | Nein |
Developer Edition | 110 | Nein |
Beta | 110 | Nein |
Release | 110 | Nein |
Einstellungsname | layout.css.scroll-driven-animations.enabled |
@scope At-Regel
Die @scope CSS At-Regel ermöglicht die Auswahl spezifischer Kindelemente, ohne die Spezifität von CSS-Selektoren übermäßig zu erhöhen (Firefox bug 1886441).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 128 | Nein |
Developer Edition | 128 | Nein |
Beta | 128 | Nein |
Release | 128 | Nein |
Einstellungsname | layout.css.at-scope.enabled |
font-variant-emoji Eigenschaft
Die CSS-Eigenschaft font-variant-emoji
ermöglicht es Ihnen, einen Standarddarstellungsstil für die Anzeige von Emojis festzulegen. Siehe (Firefox bug 1461589) für mehr Details.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 108 | Ja |
Developer Edition | 108 | Nein |
Beta | 108 | Nein |
Release | 108 | Nein |
Einstellungsname | layout.css.font-variant-emoji.enabled |
prefers-reduced-transparency Media-Feature
Das CSS-Media-Feature prefers-reduced-transparency
ermöglicht es Ihnen zu erkennen, ob ein Benutzer die Einstellung aktiviert hat, um die Menge an transparenten oder transluzenten Effekten auf seinem Gerät zu minimieren. Siehe (Firefox bug 1736914) für mehr Details.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 113 | Nein |
Developer Edition | 113 | Nein |
Beta | 113 | Nein |
Release | 113 | Nein |
Einstellungsname | layout.css.prefers-reduced-transparency.enabled |
inverted-colors Media-Feature
Das CSS-Media-Feature inverted-colors
ermöglicht es Ihnen zu erkennen, ob ein User-Agent oder das zugrunde liegende Betriebssystem Farben invertiert. Siehe (Firefox bug 1794628) für mehr Details.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 114 | Nein |
Developer Edition | 114 | Nein |
Beta | 114 | Nein |
Release | 114 | Nein |
Einstellungsname | layout.css.inverted-colors.enabled |
Eigenschaft für benannte View-Progress-Timelines
Die CSS-Eigenschaft view-timeline-name
ermöglicht es Ihnen, einem bestimmten Element einen Namen zu geben, indem festgestellt wird, dass sein Vorfahr-Scroller-Element die Quelle einer View-Progress-Zeitleiste ist. Der Name kann dann der animation-timeline
zugewiesen werden, die das zugehörige Element animiert, während es sich durch den sichtbaren Bereich seines Vorfahr-Scrollers bewegt. Siehe (Firefox bug 1737920) für mehr Details.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 114 | Nein |
Developer Edition | 114 | Nein |
Beta | 114 | Nein |
Release | 114 | Nein |
Einstellungsname | layout.css.scroll-driven-animations.enabled |
Anonyme View-Progress-Timelines-Funktion
Die CSS-Funktion view()
ermöglicht es Ihnen anzugeben, dass die animation-timeline
für ein Element eine View-Progress-Zeitleiste ist, die das Element animiert, während es durch den sichtbaren Bereich seines Vorfahr-Scrollers bewegt wird. Die Funktion definiert die Achse des Elternelements, das die Zeitleiste liefert, zusammen mit dem Rand im sichtbaren Bereich, an dem die Animation beginnt und endet. Siehe (Firefox bug 1808410) für mehr Details.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 114 | Nein |
Developer Edition | 114 | Nein |
Beta | 114 | Nein |
Release | 114 | Nein |
Einstellungsname | layout.css.scroll-driven-animations.enabled |
Browser-spezifische Transformations-Eigenschaften
Die mit -moz-
vorangestellten CSS-Transformations-Eigenschaften können durch das Setzen der Einstellung layout.css.prefixes.transforms
auf false
deaktiviert werden. Die Absicht besteht darin, diese zu deaktivieren, sobald die standardmäßigen CSS-Zoom-Eigenschaften gut unterstützt werden. (Firefox bug 1886134, Firefox bug 1855763).
Diese Einstellung deaktiviert speziell die folgenden vorangestellten Eigenschaften:
-moz-backface-visibility
-moz-perspective
-moz-perspective-origin
-moz-transform
-moz-transform-origin
-moz-transform-style
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 120 | Ja |
Developer Edition | 120 | Ja |
Beta | 120 | Ja |
Release | 120 | Ja |
Einstellungsname |
layout.css.prefixes.transforms
|
UA-Stile für <h1>
eingebettet in Abschnittselemente
Die <h1>
Überschrift verringert jetzt nicht mehr ihre Schriftgröße, wenn sie in Abschnittselemente <article>
, <aside>
, <nav>
und <section>
eingebettet ist. Die UA-Stile für <h1>
, die in Abschnittselementen eingebettet sind, sind nicht mehr relevant, da der Umriss-Algorithmus aus der HTML-Spezifikation entfernt wurde. (Firefox bug 1883896).
Hinweis:
Die Einstellung für diese Funktion funktioniert umgekehrt: Sie wird im Nightly-Build auf false
gesetzt, was das UA-Styling für Überschriften entfernt, die in Abschnittselementen eingebettet sind. In allen anderen Kanälen wird sie auf true
gesetzt, was das bestehende UA-Styling für die eingebetteten Überschriften beibehält.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 125 | Nein |
Developer Edition | 125 | Ja |
Beta | 125 | Ja |
Release | 125 | Ja |
Einstellungsname |
layout.css.h1-in-section-ua-styles.enabled
|
shape()
Funktion
Die CSS-Funktion shape()
ist ein <basic-shape>
Datentyp, der es Ihnen ermöglicht, eine Form in den Eigenschaften clip-path
und offset-path
unter Verwendung eines oder mehrerer "Shape-Befehle" zu definieren. Diese Befehle sind den SVG-Path-Befehlen sehr ähnlich. Die shape()
-Funktion ist in einiger Hinsicht der
-Funktion ähnlich, verwendet jedoch standardmäßige CSS-Syntax im Gegensatz zu path()
path()
, das die SVG-Path Syntax verwendet. Dies ermöglicht Ihnen, Formen einfach zu erstellen und zu bearbeiten und auch die Verwendung von CSS-Math-Funktionen. Für mehr Details, siehe Firefox bug 1823463 für die shape()
-Funktion Unterstützung in clip-path
, Firefox bug 1884424 für die Unterstützung der Funktion in offset-path
und Firefox bug 1884425 für ihre Interpolationsunterstützung.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 126 | Ja |
Developer Edition | 126 | Nein |
Beta | 126 | Nein |
Release | 126 | Nein |
Einstellungsname | layout.css.basic-shape-shape.enabled |
Symmetrisches letter-spacing
Die CSS-Eigenschaft letter-spacing
teilt jetzt den angegebenen Buchstabenabstand gleichmäßig auf beiden Seiten jedes Zeichens auf. Dies unterscheidet sich vom bisherigen Verhalten, bei dem der Abstand hauptsächlich auf einer Seite hinzugefügt wurde. Dieser Ansatz kann den Textabstand verbessern, insbesondere bei gemischter Richtung im Text Firefox bug 1891446.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 128 | Ja |
Developer Edition | 128 | Ja |
Beta | 127 | Nein |
Release | 127 | Nein |
Einstellungsname | layout.css.letter-spacing.model |
calc()
Farbkanalunterstützung in relativen Farben
Die CSS-Funktion calc()
kann jetzt Farbkanäle in relativen Farben analysieren, sodass Sie Änderungen an Farben in verschiedenen Farbräumen oder unter Verwendung unterschiedlicher funktionaler Notationen korrekt berechnen können Firefox bug 1889561.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 127 | Ja |
Developer Edition | 127 | Nein |
Beta | 127 | Nein |
Release | 127 | Nein |
Einstellungsname | layout.css.relative-color-syntax.enabled |
CSS-Ankerpositionierung
Das CSS-Ankerpositionierungs-Modul definiert eine Reihe von Funktionen, die es ermöglichen, Elemente als Ankerelemente zu definieren und andere Elemente relativ zu Ankerelementen zu positionieren. Dies erlaubt zum Beispiel, dass Tooltips neben zugehörigen Inhalten angezeigt werden, während sie durch das Ansichtsfenster scrollen, sich nach Bedarf bewegen, wenn sie das Ansichtsfenster überlaufen würden und verschwinden, wenn der Anker aus dem Bildschirm heraus bewegt wird. Die Reihe von Funktionen wird schrittweise hinter einer Präferenz ausgerollt (Firefox bug 1838746).
Die umgesetzten Teile umfassen:
CSSPositionTryRule
undCSSPositionTryDescriptors
(Firefox 131).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 131 | Nein |
Developer Edition | 131 | Nein |
Beta | 131 | Nein |
Release | 131 | Nein |
Einstellungsname | layout.css.anchor-positioning.enabled |
:has-slotted Pseudoklasse
Die :has-slotted
Pseudoklasse wird verwendet, um Elemente zu stylen, die in <template>
enthalten sind und denen Inhalt zu einem <slot>
-Element hinzugefügt wird, wenn ein Webkomponenten gerendert wird (Firefox bug 1921747).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 133 | Nein |
Developer Edition | 133 | Nein |
Beta | 133 | Nein |
Release | 133 | Nein |
Einstellungsname | layout.css.has-slotted-selector.enabled |
SVG
Keine.
JavaScript
Intl.DurationFormat
Intl.DurationFormat
ermöglicht das lokal-spezifische Formatieren von Zeitdauern. (Firefox bug 1648139).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 134 | Ja |
Developer Edition | 134 | Nein |
Beta | 134 | Nein |
Release | 134 | Nein |
Einstellungsname | NA |
Temporal API
Das Temporal-Objekt zielt darauf ab, die Arbeit mit Daten und Zeiten in verschiedenen Szenarien zu vereinfachen, mit eingebauter Zeitzonen- und Kalenderdarstellung (Firefox bug 1912511). Dies umfasst:
- Eine Dauer (Differenz zwischen zwei Zeitpunkten):
Temporal.Duration
- Zeitpunkte:
- Als einzigartiger Moment in der Geschichte:
- Ein Zeitstempel:
Temporal.Instant
- Ein Datum-Uhrzeit mit einer Zeitzone:
Temporal.ZonedDateTime
- Ein Zeitstempel:
- Zeit-zonen-unabhängiges Datum/Zeit ("Plain"):
- Datum (Jahr, Monat, Tag) + Zeit (Stunde, Minute, Sekunde, Millisekunde, Nanosekunde):
Temporal.PlainDateTime
- Datum (Jahr, Monat, Tag):
Temporal.PlainDate
- Jahr, Monat:
Temporal.PlainYearMonth
- Monat, Tag:
Temporal.PlainMonthDay
- Jahr, Monat:
- Zeit (Stunde, Minute, Sekunde, Millisekunde, Nanosekunde):
Temporal.PlainTime
- Datum (Jahr, Monat, Tag):
- Datum (Jahr, Monat, Tag) + Zeit (Stunde, Minute, Sekunde, Millisekunde, Nanosekunde):
- Als einzigartiger Moment in der Geschichte:
- Jetzt (aktuelle Zeit) als verschiedene Klasseninstanzen oder in einem spezifischen Format:
Temporal.Now
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 135 | Nein |
Developer Edition | — | — |
Beta | — | — |
Release | — | — |
Einstellungsname | javascript.options.experimental.temporal |
APIs
Cookie Store API
Die Cookie Store API ist eine moderne, auf Promise
basierende Methode zur Verwaltung von Cookies, die den Event-Loop nicht blockiert und nicht auf Document
angewiesen ist (sie kann daher für Service Worker verfügbar gemacht werden). Ein Teil der Cookie Store API wurde implementiert (Firefox-Bug 1800882). Dazu gehören:
- Die
CookieStore
Schnittstelle, aberpartitioned
ist nicht in den Rückgabewerten enthalten. - Die
CookieChangeEvent
Schnittstelle, ohnepartitioned
Eigenschaften. - Die
Window.cookieStore
Eigenschaft. - Die
ServiceWorkerGlobalScope.cookieStore
Eigenschaft.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 132 | Ja |
Developer Edition | 132 | Nein |
Beta | 132 | Nein |
Release | 132 | Nein |
Präferenzname | dom.cookieStore.enabled |
CloseWatcher-Schnittstelle
Eingebaute Web-Komponenten mit "open" und "close" Semantik, wie modale Dialoge und Pop-ups, können mit gerätenativen Mechanismen geschlossen werden.
Zum Beispiel können Sie auf Android einen Dialog mit der Zurück-Taste schließen.
Die CloseWatcher
Schnittstelle ermöglicht es Entwicklern, UI-Komponenten, wie benutzerdefinierte Seitenleisten, zu erstellen, die ebenfalls mit nativen Mechanismen geschlossen werden können.
(Firefox-Bug 1888729).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 132 | Nein |
Developer Edition | 132 | Ja |
Beta | 132 | Ja |
Release | 132 | Nein |
Präferenzname | dom.closewatcher.enabled |
Trusted Types API
Die Trusted Types API bietet Mechanismen zur Sicherstellung, dass Funktionen, die potenziell als Vektoren für XSS-Angriffe verwendet werden können, nur mit validierten oder bereinigten Daten aufgerufen werden können.
Hinweis: Zum Zeitpunkt des Schreibens wurde nicht genug von der API implementiert, um sie effektiv testen zu können. Diese Anmerkung wird entfernt, sobald sie bereit ist.
Ein Teil der API wurde implementiert:
TrustedTypePolicyFactory
:- Die
write()
undwriteln()
Methoden derDocument
Schnittstelle akzeptieren jetztTrustedHTML
Objekte als Parameter, zusätzlich zu Zeichenfolgen. (Firefox-Bug 1906301). - Die
text
,innerText
, undtextContent
Eigenschaften derHTMLScriptElement
Schnittstelle akzeptieren jetztTrustedScript
Objekte als Wert, währendsrc
TrustedScriptURL
Werte akzeptiert. (Firefox-Bug 1905706). - Die
Window.setInterval()
undWindow.setTimeout()
Methoden können mit einemTrustedScript
aufgerufen werden. (Firefox-Bug 1931290). - Die globale
trustedTypes
Eigenschaft ist verfügbar, um auf die Trusted Types API zuzugreifen. - Die Eigenschaften
Element.innerHTML
undShadowRoot.innerHTML
können mit trusted types aufgerufen werden.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 133 | Nein |
Developer Edition | 133 | Nein |
Beta | 133 | Nein |
Release | 133 | Nein |
Präferenzname | dom.security.trusted_types.enabled |
Grafiken: Canvas, WebGL und WebGPU
WebGL: Entwurfs-Erweiterungen
Wenn diese Präferenz aktiviert ist, sind alle aktuellen WebGL-Erweiterungen im "Entwurf" Status, die getestet werden, zur Nutzung aktiviert. Derzeit werden keine WebGL-Erweiterungen von Firefox getestet.
WebGPU API
Die WebGPU API bietet Unterstützung auf niedriger Ebene für die Durchführung von Berechnungen und Grafik-Rendering unter Verwendung der Graphics Processing Unit (GPU) des Geräts oder Computers des Benutzers. Siehe Firefox-Bug 1602129 für unseren Fortschritt bei dieser API.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 113 | Ja |
Developer Edition | 73 | Nein |
Beta | 73 | Nein |
Release | 73 | Nein |
Präferenzname | dom.webgpu.enabled |
Reporting API-Unterstützung für CSP-Verletzungen
Die Reporting API unterstützt jetzt das Melden von Content Security Policy (CSP)-Verletzungen.
Report
Instanzen, die von der ReportingObserver
Schnittstelle zurückgegeben werden, können jetzt einen type
Wert von "csp-violation"
haben und eine body
Eigenschaft, die eine Instanz der CSPViolationReportBody
Schnittstelle enthält.
Dies ermöglicht es, CSP-Verletzungen innerhalb einer Webseite zu melden.
CSP-Verletzungsberichte können auch an entfernte Endpunkte gesendet werden, die namentlich in der CSP report-to
Direktive angegeben sind – Endpunktnamen und entsprechende URLs müssen zuerst in den HTTP-Antwort-Headern Reporting-Endpoints
oder Report-To
definiert werden.
Der Bericht ist eine Serialisierung des oben beschriebenen Report
Objekts mit einer body
Eigenschaft, die eine Serialisierung einer CSPViolationReportBody
Instanz ist.
Dieser Verletzungsbericht ersetzt einen ähnlichen CSP-spezifischen Mechanismus zum Senden von Verletzungsberichten, der die CSP report-uri
Direktive verwendet, um die URL des Meldeendpunkts festzulegen, und hat ein CSP-spezifisches JSON-Verletzungsberichtformat.
(Firefox-Bug 1391243).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 130 | Nein |
Developer Edition | 130 | Nein |
Beta | 130 | Nein |
Release | 130 | Nein |
Präferenzname | dom.reporting.enabled |
WebRTC und Medien
Die folgenden experimentellen Funktionen umfassen jene, die in der WebRTC API, der Web Audio API, der Media Source Extensions API, der Encrypted Media Extensions API und der Media Capture and Streams API gefunden werden.
Asynchrone SourceBuffer-Hinzufügung und -Entfernung
Dies fügt die auf Versprechen basierenden Methoden appendBufferAsync()
und removeAsync()
zum Hinzufügen und Entfernen von Medienquellenpuffern zur SourceBuffer
Schnittstelle hinzu. Siehe Firefox-Bug 1280613 und Firefox-Bug 778617 für weitere Informationen.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 62 | Nein |
Developer Edition | 62 | Nein |
Beta | 62 | Nein |
Release | 62 | Nein |
Präferenzname | media.mediasource.experimental.enabled |
AVIF-Konformitätsstrenge
Die Präferenz image.avif.compliance_strictness
kann verwendet werden, um die Strenge zu steuern, die beim Verarbeiten von AVIF Bildern angewendet wird.
Dies ermöglicht es Firefox-Nutzern, Bilder anzuzeigen, die in einigen anderen Browsern angezeigt werden, selbst wenn sie nicht strikt konform sind.
Erlaubte Werte sind:
0
: Akzeptiere Bilder mit Verstößen gegen die Spezifikationen sowohl in Empfehlungen ("sollte"-Sprache) als auch in Anforderungen ("muss"-Sprache), vorausgesetzt, sie können sicher oder unmissverständlich interpretiert werden.1
(Standard): Lehne Verstöße gegen Anforderungen ab, erlaube jedoch Verstöße gegen Empfehlungen.2
: Streng. Lehne jegliche Verstöße gegen Anforderungen oder Empfehlungen ab.
Release-Kanal | Version hinzugefügt | Standardwert |
---|---|---|
Nightly | 92 | 1 |
Developer Edition | 92 | 1 |
Beta | 92 | 1 |
Release | 92 | 1 |
Präferenzname | image.avif.compliance_strictness |
JPEG XL-Unterstützung
Firefox unterstützt JPEG XL Bilder, wenn diese Funktion aktiviert ist. Siehe Firefox-Bug 1539075 für weitere Details.
Beachten Sie, dass, wie unten gezeigt, die Funktion nur in Nightly-Builds verfügbar ist (unabhängig davon, ob die Präferenz eingestellt ist).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 90 | Nein |
Developer Edition | — | — |
Beta | — | — |
Release | — | — |
Präferenzname | image.jxl.enabled |
CSS Custom Highlight API
Die CSS Custom Highlight API bietet einen Mechanismus zum Stylen von beliebigen Textbereichen in einem Dokument (verallgemeinert das Verhalten anderer Highlight-Pseudo-Elemente wie ::selection
, ::spelling-error
, ::grammar-error
, und ::target-text
).
Die Bereiche werden in JavaScript unter Verwendung von Range
Instanzen definiert, die in einem Highlight
gruppiert sind, und dann mit einem Namen unter Verwendung von HighlightRegistry
registriert werden.
Das CSS ::highlight
Pseudo-Element wird verwendet, um Stile auf ein registriertes Highlight anzuwenden.
Siehe Firefox-Bug 1703961 für weitere Details.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 117 | Ja |
Developer Edition | 117 | Nein |
Beta | 117 | Nein |
Release | 117 | Nein |
Präferenzname | dom.customHighlightAPI.enabled |
WebVR API
WebVR API (Deaktiviert)
Die veraltete WebVR API befindet sich auf dem Weg zur Entfernung. Sie ist standardmäßig in allen Builds deaktiviert Firefox-Bug 1750902.
Release-Kanal | Version entfernt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 98 | Nein |
Developer Edition | 98 | Nein |
Beta | 98 | Nein |
Release | 98 | Nein |
Präferenzname | dom.vr.enabled |
HTML DOM API
Selektionen über die Grenze des Shadow DOM
Die Methode Selection.getComposedRanges()
kann verwendet werden, um ein Array von StaticRange
Objekten zu erhalten, die den aktuell ausgewählten Bereich oder Bereiche darstellen.
Im Gegensatz zu Selection.getRangeAt()
kann diese Methode Bereiche mit Anker- oder Fokus-Knoten innerhalb eines Shadow DOM zurückgeben, jedoch nur, wenn die ShadowRoot
Objekte übergeben werden, die diese Knoten enthalten.
Andernfalls wird ein Bereich zurückgegeben, der so umgegliedert wurde, dass er den Host-Knoten des Shadow-Roots einbezieht, der den Knoten enthält.
Die Selection
Methoden setBaseAndExtent()
, collapse()
, und extend()
wurden ebenfalls so verändert, dass sie Knoten innerhalb eines Shadow-Roots akzeptieren.
Benutzerauswahlen über Maus, Tastatur usw. können überall im Dokument beginnen und enden, einschließlich innerhalb beliebiger offener oder geschlossener Schattenbäume. (Firefox-Bug 1867058).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 126 | Ja |
Developer Edition | 126 | Nein |
Beta | 126 | Nein |
Release | 126 | Nein |
Präferenzname | dom.shadowdom.selection_across_boundary.enabled |
HTMLMediaElement Eigenschaften: audioTracks und videoTracks
Wenn diese Funktion aktiviert ist, werden die Eigenschaften HTMLMediaElement.audioTracks
und HTMLMediaElement.videoTracks
zu allen HTML-Medienelementen hinzugefügt. Da Firefox jedoch derzeit keine Unterstützung für mehrere Audio- und Videospuren bietet, funktionieren die häufigsten Anwendungsfälle für diese Eigenschaften nicht, daher sind sie beide standardmäßig deaktiviert. Siehe Firefox-Bug 1057233 für weitere Details.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 33 | Nein |
Developer Edition | 33 | Nein |
Beta | 33 | Nein |
Release | 33 | Nein |
Präferenzname | media.track.enabled |
GeometryUtils-Methoden: convertPointFromNode(), convertRectFromNode(), und convertQuadFromNode()
Die GeometryUtils
-Methoden convertPointFromNode()
, convertRectFromNode()
, und convertQuadFromNode()
mappen den angegebenen Punkt, das Rechteck oder das Quadrupel vom Node
, an dem sie aufgerufen werden, auf einen anderen Knoten. (Siehe Firefox-Bug 918189 für weitere Details.)
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 31 | Ja |
Developer Edition | 31 | Nein |
Beta | 31 | Nein |
Release | 31 | Nein |
Präferenzname | layout.css.convertFromNode.enable |
GeometryUtils-Methode: getBoxQuads()
Die GeometryUtils
-Methode getBoxQuads()
liefert die CSS-Boxen für einen Node
relativ zu jedem anderen Knoten oder Viewport. (Siehe Firefox-Bug 917755 für weitere Details.)
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 31 | Ja |
Developer Edition | 31 | Nein |
Beta | 31 | Nein |
Release | 31 | Nein |
Präferenzname | layout.css.getBoxQuads.enabled |
Payment Request API
Primäre Zahlungsabwicklung
Die Payment Request API bietet Unterstützung für die Abwicklung von webbasierten Zahlungen innerhalb von Webinhalten oder Apps. Aufgrund eines Bugs, der während der Tests der Benutzeroberfläche auftrat, haben wir beschlossen, die Bereitstellung dieser API zu verschieben, während Diskussionen über potenzielle Änderungen an der API stattfinden. Die Arbeit ist im Gange. (Siehe Firefox-Bug 1318984 für weitere Details.)
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 55 | Nein |
Developer Edition | 55 | Nein |
Beta | 55 | Nein |
Release | 55 | Nein |
Präferenzname |
dom.payments.request.enabled unddom.payments.request.supportedRegions
|
WebShare API
Die Web Share API ermöglicht das Teilen von Dateien, URLs und anderen Daten von einer Website. Diese Funktion ist auf Android in allen Builds aktiviert, jedoch hinter einer Präferenz auf Desktop (es sei denn, unten angegeben).
Release-Kanal | Geänderte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 71 | Nein (Standard). Ja (Windows ab Version 92) |
Developer Edition | 71 | Nein |
Beta | 71 | Nein |
Release | 71 | Nein (Desktop). Ja (Android). |
Präferenzname | dom.webshare.enabled |
Screen Orientation API
ScreenOrientation.lock()
Die Methode ScreenOrientation.lock()
ermöglicht es, ein Gerät auf eine bestimmte Ausrichtung zu sperren, wenn dies vom Gerät unterstützt und von den Browser-Anforderungen vor der Sperre erlaubt wird.
Typischerweise ist das Sperren der Ausrichtung nur auf mobilen Geräten erlaubt, wenn das Dokument im Vollbildmodus angezeigt wird.
Siehe Firefox-Bug 1697647 für weitere Details.
Release-Kanal | Geänderte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 111 | Ja |
Developer Edition | 97 | Nein |
Beta | 97 | Nein |
Release | 97 | Nein |
Präferenzname | dom.screenorientation.allow-lock |
Priorisierte Task-Scheduling API
Die Prioritized Task Scheduling API bietet eine standardisierte Möglichkeit, alle Aufgaben einer Anwendung zu priorisieren, unabhängig davon, ob sie im Code eines Website-Entwicklers oder in Bibliotheken und Frameworks von Drittanbietern definiert sind. (Firefox-Bug 1734997)
Diese Funktion wurde in Firefox Nightly in Firefox 101 aktiviert. Die Unterstützung in Firefox Nightly 135 wurde vorübergehend deaktiviert, um Ausfällen in der freien Wildbahn zu vermeiden.
Release-Kanal | Geänderte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 101 | Nein |
Developer Edition | 101 | Nein |
Beta | 101 | Nein |
Release | 101 | Nein |
Präferenzname | dom.enable_web_task_scheduling |
Notifications API
Benachrichtigungen haben standardmäßig die requireInteraction
Eigenschaft auf true auf Windows-Systemen und in der Nightly-Version (Firefox-Bug 1794475).
Release-Kanal | Geänderte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 117 | Ja |
Developer Edition | 117 | Nein |
Beta | 117 | Nein |
Release | 117 | Nur Windows |
Präferenzname | dom.webnotifications.requireinteraction.enabled |
Sicherheit und Datenschutz
Blockieren von Klartextanforderungen von Flash auf verschlüsselten Seiten
Um MitM-Angriffe durch Flash-Inhalte auf verschlüsselten Seiten zu vermindern, wurde eine Präferenz hinzugefügt, um OBJECT_SUBREQUEST
s als aktive Inhalte zu behandeln. Siehe Firefox-Bug 1190623 für weitere Details.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 59 | Nein |
Developer Edition | 59 | Nein |
Beta | 59 | Nein |
Release | 59 | Nein |
Präferenzname |
security.mixed_content.block_object_subrequest
|
Beschriftung unsicherer Seiten
Die zwei security.insecure_connection_text_*
Präferenzen fügen im Adressfeld neben dem traditionellen Schloss-Symbol ein "Nicht sicher"-Textlabel hinzu, wenn eine Seite unsicher geladen wird (d. h. unter Verwendung von HTTP anstelle von HTTPS). Die browser.urlbar.trimHttps
Präferenz kürzt das https:
Präfix der URL im Adressfeld. Siehe Firefox-Bug 1853418 für weitere Details.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 121 | Ja |
Developer Edition | 60 | Nein |
Beta | 60 | Nein |
Release | 60 | Nein |
Präferenzname |
security.insecure_connection_text.enabled für den normalen Browsing-Modus;
security.insecure_connection_text.pbmode.enabled für den privaten Browsing-Modus
browser.urlbar.trimHttps zum Kürzen des https-Präfixes
|
Permissions Policy / Feature Policy
Permissions Policy ermöglicht es Webentwicklern, bestimmte Funktionen und APIs im Browser selektiv zu aktivieren, zu deaktivieren und ihr Verhalten zu ändern. Es ähnelt CSP, kontrolliert jedoch Funktionen anstelle von Sicherheitsverhalten. Dies wird in Firefox als Feature Policy implementiert, der Name einer früheren Version der Spezifikation.
Beachten Sie, dass unterstützte Richtlinien durch das allow
Attribut auf <iframe>
Elementen festgelegt werden können, selbst wenn die Nutzerpräferenz nicht gesetzt ist.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 65 | Nein |
Developer Edition | 65 | Nein |
Beta | 65 | Nein |
Release | 65 | Nein |
Präferenzname |
dom.security.featurePolicy.header.enabled
|
Privacy Preserving Attribution API (PPA)
PPA API bietet eine Alternative zum User-Tracking für die Werbezurechnung unter Verwendung des neuen navigator.privateAttribution
Objekts mit den Methoden saveImpression()
und measureConversion()
. Lesen Sie mehr über PPA im Erklärer. Dieses Experiment kann für Websites über Origin Trial oder im Browser durch Setzen der Präferenz auf 1
aktiviert werden. (Firefox-Bug 1900929).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 128 | Nein |
Developer Edition | 128 | Nein |
Beta | 128 | Nein |
Release | 128 | Nein |
Präferenzname |
dom.origin-trials.private-attribution.state
|
HTTP
Accept-Header mit MIME-Typ image/jxl
Der HTTP Accept
Header in Standardanfragen und Bildanfragen kann über eine Präferenz konfiguriert werden, um Unterstützung für den image/jxl
MIME-Typ anzuzeigen.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 128 | Nein |
Developer Edition | 128 | Nein |
Beta | 128 | Nein |
Release | 128 | Nein |
Präferenzname |
image.jxl.enabled
|
SameSite=Lax standardmäßig
SameSite
Cookies haben einen Standardwert von Lax
.
Mit dieser Einstellung werden Cookies nur gesendet, wenn ein Nutzer zur Ursprungswebsite navigiert, nicht für Cross-Site-Subanfragen, um Bilder oder Frames in eine Drittanbieter-Website zu laden usw.
Für weitere Details siehe Firefox-Bug 1617609.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 69 | Nein |
Developer Edition | 69 | Nein |
Beta | 69 | Nein |
Release | 69 | Nein |
Präferenzname | network.cookie.sameSite.laxByDefault |
Access-Control-Allow-Headers-Wildcard deckt Authorisation nicht ab
Der Access-Control-Allow-Headers
ist ein Antwort-Header auf eine CORS-Preflight-Anfrage, der angibt, welche Anforderungs-Header in die endgültige Anfrage aufgenommen werden dürfen.
Die Antwort-Direktive kann einen Platzhalter (*
) enthalten, was anzeigt, dass die endgültige Anfrage alle Header außer dem Authorization
Header enthalten darf.
Standardmäßig beinhaltet Firefox den Authorization
Header in der endgültigen Anfrage, nachdem er eine Antwort mit Access-Control-Allow-Headers: *
erhalten hat.
Setzen Sie die Präferenz auf false
, um sicherzustellen, dass Firefox den Authorization
Header nicht einbezieht.
Für weitere Details siehe Firefox-Bug 1687364.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 115 | Ja |
Developer Edition | 115 | Ja |
Beta | 115 | Ja |
Release | 115 | Ja |
Präferenzname | network.cors_preflight.authorization_covered_by_wildcard |
Entwicklerwerkzeuge
Die Entwicklerwerkzeuge von Mozilla entwickeln sich ständig weiter. Wir experimentieren mit neuen Ideen, fügen neue Funktionen hinzu und testen sie auf den Nightly- und Developer Edition-Kanälen, bevor wir sie in die Beta und die finale Veröffentlichung übergehen lassen. Die unten aufgeführten Funktionen sind die aktuelle Auswahl an experimentellen Entwicklerwerkzeugfunktionen.