Experimentelle Funktionen in Firefox
Auf dieser Seite sind experimentelle und teilweise implementierte Funktionen von Firefox aufgelistet, einschließlich derer für vorgeschlagene oder hochmoderne Webplattform-Standards, zusammen mit Informationen zu den Builds, in denen sie vorhanden sind, ob sie "standardmäßig" aktiviert sind und welche Einstellung zur Aktivierung oder Deaktivierung verwendet werden kann. Dies ermöglicht es Ihnen, die Funktionen zu testen, bevor sie freigegeben werden.
Neue Funktionen erscheinen zuerst im Firefox Nightly Build, wo sie oft standardmäßig aktiviert sind. Anschließend propagieren sie sich in die Firefox Developer Edition und schließlich in den Release-Build. Nachdem eine Funktion in einem Release-Build standardmäßig aktiviert wurde, gilt sie nicht mehr als experimentell und sollte aus dem Thema entfernt werden.
Experimentelle Funktionen können mit dem Firefox-Konfigurationseditor (geben Sie about:config
in die Firefox-Adressleiste ein) aktiviert oder deaktiviert werden, indem die unten aufgeführte zugehörige Einstellung geändert wird.
Hinweis:
Für Editoren - Beim Hinzufügen von Funktionen zu diesen Tabellen versuchen Sie bitte, einen Link zum entsprechenden Bug oder den Bugs hinzuzufügen, indem Sie [Firefox bug <number>](https://bugzil.la/<number>)
verwenden.
HTML
Layout für input type="search"
Das Layout für input type="search"
wurde aktualisiert. Dadurch hat ein Suchfeld ein Löschsymbol, sobald jemand damit beginnt, darin zu tippen, um andere Browserimplementierungen anzupassen. (Siehe Firefox-Bug 558594 für weitere Details.)
Release-Kanal | Hinzugefügte Version | 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-Passworteingabeelemente (<input type="password">
) enthalten ein "Augen"-Symbol, das umgeschaltet werden kann, um den Passworttext anzuzeigen oder zu verbergen (Firefox-Bug 502258).
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 96 | Nein |
Developer Edition | 96 | Nein |
Beta | 96 | Nein |
Release | 96 | Nein |
Einstellungsname | layout.forms.reveal-password-button.enabled |
CSS
Hex-Boxen zur Anzeige von unvorhergesehenen 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 ein Hex-Box, wenn sie nicht erwartet werden. (Siehe Firefox-Bug 1099557 für weitere Details.)
Release-Kanal | Hinzugefügte Version | 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 zu spezifizieren, wie fallende, erhöhte und eingesenkte Anfangsbuchstaben angezeigt werden. (Siehe Firefox-Bug 1223880 für weitere Details.)
Release-Kanal | Hinzugefügte Version | 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ößenangabe-Eigenschaften angewendet wird. Diese Funktion wird bereits gut für die CSS-Grid-Layout-Spurengrößen unterstützt. (Siehe Firefox-Bug 1312588 für weitere Details.)
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 91 | Nein |
Developer Edition | 91 | Nein |
Beta | 91 | Nein |
Release | 91 | Nein |
Einstellungsname | layout.css.fit-content-function.enabled |
Scroll-gesteuerte Animationen
Früher als "scroll-verknüpfte Animationen" bezeichnet, hängt eine scroll-gesteuerte Animation von der Scrollposition eines Scrollbalkens anstelle von Zeit oder einer anderen Dimension ab. Die scroll-timeline-name
und scroll-timeline-axis
Eigenschaften (und die scroll-timeline
Kurzform-Eigenschaft) erlauben es Ihnen anzugeben, dass ein bestimmter Scrollbalken in einem bestimmten benannten Container als Quelle für eine scroll-gesteuerte Animation verwendet werden kann. Die Scroll-Zeitachse kann dann mit einer Animation verbunden werden, indem die animation-timeline
Eigenschaft auf den Namenwert gesetzt wird, der mithilfe von scroll-timeline-name
definiert wurde.
Bei der Verwendung der scroll-timeline
Kurzform-Eigenschaft muss die Reihenfolge der Eigenschaftswerte scroll-timeline-name
gefolgt von scroll-timeline-axis
sein. Die Einzel- und Kurzform-Eigenschaften sind beide hinter der Einstellung verfügbar.
Alternativ können Sie die scroll()
Funktionsnotation mit animation-timeline
verwenden, um anzugeben, dass eine Scrollbalkenachse in einem Vorfahrelement für die Zeitachse verwendet wird.
Für weitere Informationen siehe Firefox-Bug 1807685, Firefox-Bug 1804573, Firefox-Bug 1809005, Firefox-Bug 1676791, Firefox-Bug 1754897, Firefox-Bug 1817303, und Firefox-Bug 1737918.
Die timeline-scope
, animation-range-start
und animation-range-end
Eigenschaften (und die animation-range
Kurzform-Eigenschaft) werden noch nicht unterstützt. Für weitere Informationen siehe Firefox-Bug 1676779.
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 136 | Ja |
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 erlaubt es Ihnen, spezifische Kind-Elemente auszuwählen, ohne die Spezifität von CSS-Selektoren übermäßig zu erhöhen (Firefox-Bug 1886441).
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 137 | Ja |
Developer Edition | 128 | Nein |
Beta | 128 | Nein |
Release | 128 | Nein |
Einstellungsname | layout.css.at-scope.enabled |
font-variant-emoji Eigenschaft
Die CSS font-variant-emoji
Eigenschaft erlaubt Ihnen, einen Standardpräsentationsstil für die Anzeige von Emojis festzulegen. Siehe (Firefox-Bug 1461589) für weitere Details.
Release-Kanal | Hinzugefügte Version | 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 Medienmerkmal
Das CSS prefers-reduced-transparency
Medienmerkmal ermöglicht es Ihnen zu erkennen, ob ein Benutzer die Einstellung aktiviert hat, um die Menge an transparenten oder durchscheinenden Layer-Effekten auf ihrem Gerät zu minimieren. Siehe (Firefox-Bug 1736914) für weitere Details.
Release-Kanal | Hinzugefügte Version | 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 Medienmerkmal
Das CSS inverted-colors
Medienmerkmal ermöglicht es Ihnen zu erkennen, ob ein Benutzeragent oder das zugrunde liegende Betriebssystem die Farben umkehrt. Siehe (Firefox-Bug 1794628) für weitere Details.
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 114 | Nein |
Developer Edition | 114 | Nein |
Beta | 114 | Nein |
Release | 114 | Nein |
Einstellungsname | layout.css.inverted-colors.enabled |
Benannte Ansicht für Fortschritts-Zeitachsen-Eigenschaft
Die CSS view-timeline-name
Eigenschaft ermöglicht es Ihnen, einem bestimmten Element einen Namen zu geben, um anzugeben, dass das Vorfahren-Scroller-Element die Quelle einer Fortschritts-Zeitachse ist. Der Name kann dann der animation-timeline
zugewiesen werden, die dann das zugehörige Element animiert, wenn es sich durch den sichtbaren Bereich seines Vorfahren-Scrollers bewegt. Siehe (Firefox-Bug 1737920) für weitere Details.
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 114 | Nein |
Developer Edition | 114 | Nein |
Beta | 114 | Nein |
Release | 114 | Nein |
Einstellungsname | layout.css.scroll-driven-animations.enabled |
Anonyme Ansicht für Fortschritts-Zeitachsen-Funktion
Die CSS view()
Funktion ermöglicht es Ihnen zu spezifizieren, dass die animation-timeline
für ein Element eine Fortschritts-Zeitachse ist, die das Element animiert, wenn es sich durch den sichtbaren Bereich seines Vorfahren-Scrollers bewegt. Die Funktion definiert die Achse des Elternelements, die die Zeitachse bereitstellt, zusammen mit dem Einsatz im sichtbaren Bereich, bei dem die Animation beginnt und endet. Siehe (Firefox-Bug 1808410) für weitere Details.
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 114 | Nein |
Developer Edition | 114 | Nein |
Beta | 114 | Nein |
Release | 114 | Nein |
Einstellungsname | layout.css.scroll-driven-animations.enabled |
Anbieterpräfixe für Transform-Eigenschaften
Die mit -moz-
versehenen CSS-Transform Eigenschaften können durch Setzen der layout.css.prefixes.transforms
Präferenz 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).
Speziell diese Präferenz wird die folgenden vorgeprefixten Eigenschaften deaktivieren:
-moz-backface-visibility
-moz-perspective
-moz-perspective-origin
-moz-transform
-moz-transform-origin
-moz-transform-style
Release-Kanal | Hinzugefügte Version | 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>
, die in Gliederungselementen eingebettet sind
Die <h1>
Überschrift verringert jetzt nicht mehr die Schriftgröße, wenn sie innerhalb von Gliederungselementen <article>
, <aside>
, <nav>
, und <section>
eingebettet ist. Die UA-Stile für <h1>
, die innerhalb von Gliederungselementen eingebettet sind, sind nicht mehr relevant, da der Outline-Algorithmus entfernt wurde aus der HTML-Spezifikation. (Firefox-Bug 1883896).
Hinweis:
Die Präferenz für diese Funktion funktioniert umgekehrt: Sie ist auf false
im Nightly-Build gesetzt, was das UA-Styling für Überschriften entfernt, die in Gliederungselementen eingebettet sind. Sie ist auf true
in allen anderen Kanälen gesetzt, was das bestehende UA-Styling für die eingebetteten Überschriften beibehält.
Release-Kanal | Hinzugefügte Version | 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 shape()
Funktion ist ein <basic-shape>
Datentyp, der es Ihnen ermöglicht, eine Form in den clip-path
und offset-path
Eigenschaften unter Verwendung von einer oder mehreren "Form-Befehlen" zu definieren. Diese Befehle ähneln sehr den SVG-Pfadbefehlen. Die shape()
Funktion ähnelt in einigen Punkten der path()
Funktion, aber im Gegensatz zu path()
, das die SVG-Pfad Syntax verwendet, nutzt shape()
die standardmäßige CSS-Syntax. Dies ermöglicht es Ihnen, Formen einfach zu erstellen und zu bearbeiten und erlaubt auch die Verwendung von CSS-Math-Funktionen. Für weitere 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 die Unterstützung der Interpolation.
Release-Kanal | Hinzugefügte Version | 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 letter-spacing
-Eigenschaft teilt jetzt den angegebenen Buchstabenabstand gleichmäßig auf beiden Seiten jedes Zeichens auf. Dies unterscheidet sich vom aktuellen Verhalten, bei dem der Abstand hauptsächlich auf einer Seite hinzugefügt wird. Dieser Ansatz kann die Textabstände, insbesondere in gemischt-direktionalem Text, verbessern Firefox-Bug 1891446.
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 128 | Ja |
Developer Edition | 128 | Ja |
Beta | 127 | Nein |
Release | 127 | Nein |
Einstellungsname | layout.css.letter-spacing.model |
Unterstützung für calc()
Farbkanäle in relativen Farben
Die CSS calc()
Funktion kann jetzt Farbkanäle in relativen Farben parsen, was es Ihnen ermöglicht, Änderungen an Farben in verschiedenen Farbräumen oder unter Verwendung verschiedener Funktionsnotationen korrekt zu berechnen Firefox-Bug 1889561.
Release-Kanal | Hinzugefügte Version | 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 ermöglicht es zum Beispiel, Tooltips neben zugehörigen Inhalten anzuzeigen, wenn sie durch das Ansichtsfenster scrollen, sich bei Bedarf zu bewegen, wenn sie das Ansichtsfenster überlaufen würden, und zu verschwinden, wenn der Anker außerhalb des Bildschirms bewegt wird. Der Satz von Funktionen wird schrittweise hinter einer Präferenz eingeführt (Firefox-Bug 1838746).
Die Teile, die implementiert wurden, umfassen:
CSSPositionTryRule
undCSSPositionTryDescriptors
(Firefox 131).
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 131 | Nein |
Developer Edition | 131 | Nein |
Beta | 131 | Nein |
Release | 131 | Nein |
Einstellungsname | layout.css.anchor-positioning.enabled |
::details-content
Pseudo-Element
Das CSS ::details-content
Pseudo-Element ermöglicht es Ihnen, den Inhalt des <details>
Elements zu stylen (Firefox-Bug 1901037).
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 138 | Nein |
Developer Edition | 138 | Nein |
Beta | 138 | Nein |
Release | 138 | Nein |
Einstellungsname | layout.css.details-content.enabled |
Pseudo-Elemente nach elementgestützten Pseudo-Elementen zulassen
Es wird daran gearbeitet, Pseudo-Elemente wie ::first-letter
und ::before
zu erlauben, nach elementgestützten Pseudo-Elementen wie ::details-content
und ::file-selector-button
angehängt zu werden.
Dies ermöglicht es Benutzern beispielsweise, den ersten Buchstaben des <details>
Elements zu stylen, indem der CSS-Selektor ::details-content::first-letter
verwendet oder Inhalt vor einem <input>
von type="file"
hinzugefügt wird, indem der CSS-Selektor ::file-selector-button::before
verwendet wird.
Derzeit kann nur die Unterstützung für ::details-content::first-letter
geparst werden, indem @supports(::details-content::first-letter)
und die Präferenz für ::details-content Pseudo-Element aktiviert sind, um dies zu testen. Das ::file-selector-button
Pseudo-Element ist noch nicht als elementbasiertes Pseudo-Element markiert, sodass es derzeit keine Möglichkeit gibt, dies zu testen. (Firefox-Bug 1953557).
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 138 | Nein |
Developer Edition | 138 | Nein |
Beta | 138 | Nein |
Release | 138 | Nein |
Einstellungsname | layout.css.details-content.enabled |
SVG
<discard>
Element für SVG-Animationen
Das <discard>
SVG-Element wird jetzt unterstützt, zusammen mit dessen zugehörigem SVGDiscardElement
JavaScript-Interface. Das Element erlaubt es Entwicklern, eine Auslösezeit oder ein Ereignis anzugeben, zu dem ein bestimmtes Element und seine Kinder aus dem DOM entfernt werden sollen. Ein SVG-Viewer kann diese Information verwenden, um Speicherplatz zu sparen, indem Elemente, die nicht mehr benötigt werden, wie zum Beispiel abgeschlossene animierte Elemente, verworfen werden. (Firefox-Bug 1069931).
Release-Kanal | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 136 | Nein |
Developer Edition | 136 | Nein |
Beta | 136 | Nein |
Release | 136 | Nein |
Einstellungsname | svg.discard.enabled |
JavaScript
Temporal API
Das Temporal-Objekt zielt darauf ab, die Arbeit mit Daten und Zeiten in verschiedenen Szenarien zu vereinfachen, mit eingebauten Zeitzonen- und Kalenderdarstellungen (Firefox-Bug 1912511). Dies beinhaltet:
- Eine Dauer (Unterschied zwischen zwei Zeitpunkten):
Temporal.Duration
- Zeitpunkte:
- Als einzigartiger Moment in der Geschichte:
- Ein Zeitstempel:
Temporal.Instant
- Ein Datum und eine Uhrzeit mit einer Zeitzone:
Temporal.ZonedDateTime
- Ein Zeitstempel:
- Zeitzonen-unabhängiges Datum/Zeit ("Plain"):
- Datum (Jahr, Monat, Tag) + Uhrzeit (Stunde, Minute, Sekunde, Millisekunde, Nanosekunde):
Temporal.PlainDateTime
- Datum (Jahr, Monat, Tag):
Temporal.PlainDate
- Jahr, Monat:
Temporal.PlainYearMonth
- Monat, Tag:
Temporal.PlainMonthDay
- Jahr, Monat:
- Uhrzeit (Stunde, Minute, Sekunde, Millisekunde, Nanosekunde):
Temporal.PlainTime
- Datum (Jahr, Monat, Tag):
- Datum (Jahr, Monat, Tag) + Uhrzeit (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 | Hinzugefügte Version | Standardmäßig aktiviert? |
---|---|---|
Nightly | 137 | Ja |
Developer Edition | 137 | Nein |
Beta | 137 | Nein |
Release | 137 | Nein |
Einstellungsname | javascript.options.experimental.temporal |
APIs
CloseWatcher-Schnittstelle
Integrierte Web-Komponenten mit den Semantiken "open" und "close", wie modale Dialoge und Popovers, können mit nativen Gerätemechanismen geschlossen werden.
Zum Beispiel können Sie unter Android einen Dialog mit der Zurück-Taste schließen.
Die CloseWatcher
Schnittstelle ermöglicht es Entwicklern, UI-Komponenten zu implementieren, wie benutzerdefinierte Sidebars, die ähnlich 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, um sicherzustellen, dass Funktionen, die potenziell als Vektoren für XSS-Angriffe genutzt werden könnten, nur mit Daten aufgerufen werden können, die validiert oder bereinigt wurden.
Hinweis: Zum Zeitpunkt des Schreibens wurde noch nicht genug von der API implementiert, um effektiv getestet werden zu können. Dieser Hinweis wird entfernt, sobald sie bereit ist.
Dieser Teil der API wurde implementiert:
TrustedTypePolicyFactory
:- Die Methoden
write()
undwriteln()
derDocument
Schnittstelle akzeptieren jetztTrustedHTML
Objekte als Parameter, zusätzlich zu Zeichenketten. (Firefox-Bug 1906301). - Die Eigenschaften
text
,innerText
undtextContent
derHTMLScriptElement
Schnittstelle akzeptieren jetztTrustedScript
Objekte als Wert, währendsrc
TrustedScriptURL
Werte akzeptiert. (Firefox-Bug 1905706). - Die Methoden
Window.setInterval()
undWindow.setTimeout()
können mit einemTrustedScript
aufgerufen werden. (Firefox-Bug 1931290). - Die globale Eigenschaft
trustedTypes
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 |
HTML Sanitizer API
Die HTML Sanitizer API ermöglicht Entwicklern, nicht vertrauenswürdige HTML-Zeichenfolgen zu bereinigen, um sie sicher in das DOM eines Dokuments einzufügen.
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 138 | Nein |
Developer Edition | 138 | Nein |
Beta | 138 | Nein |
Release | 138 | Nein |
Präferenzname | dom.security.sanitizer.enabled |
Escape < und > in Attributen beim Serialisieren von HTML
Firefox ersetzt die Zeichen <
und >
durch <
und >
(bzw.) in Attributen beim Serialisieren von HTML.
Dies verhindert bestimmte Exploits, bei denen HTML serialisiert und dann wieder in das DOM injiziert wird.
Die betroffenen Methoden und Eigenschaften sind: Element.innerHTML
, Element.outerHTML
, Element.getHTML()
, ShadowRoot.innerHTML
, und ShadowRoot.getHTML()
.
(Firefox-Bug 1941347).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 139 | Ja |
Developer Edition | 139 | Nein |
Beta | 139 | Nein |
Release | 139 | Nein |
Präferenzname |
dom.security.html_serialization_escape_lt_gt
|
Entfernung von MutationEvent
MutationEvent
und die damit verbundenen Ereignisse (DOMSubtreeModified
, DOMNodeInserted
, DOMNodeRemoved
, DOMCharacterDataModified
, DOMAttrModified
) sind auf dem Weg der Entfernung und wurden im Nightly deaktiviert. (Firefox-Bug 1951772).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 138 | Nein |
Developer Edition | 138 | Ja |
Beta | 138 | Ja |
Release | 138 | Ja |
Präferenzname | dom.mutation_events.enabled |
PerformanceEventTiming.interactionId
PerformanceEventTiming.interactionId
kann verwendet werden, um die Latenzzeit für Ereignisse zu messen, die durch eine bestimmte Benutzerinteraktion ausgelöst werden. (Firefox-Bug 1934683).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 138 | Nein |
Developer Edition | 138 | Nein |
Beta | 138 | Nein |
Release | 138 | Nein |
Präferenzname | dom.performance.event_timing.enable_interactionid |
Notification.actions
Die actions
Eigenschaft der Notification
Schnittstelle wird in Nightly unterstützt.
Diese enthält Benachrichtigungsaktionen, die mit ServiceWorkerRegistration.showNotification()
gesetzt wurden.
(Firefox-Bug 1225110).
Release-Kanal | Version hinzugefügt | Standardmäßig aktiviert? |
---|---|---|
Nightly | 138 | |
Developer Edition | 138 | Nein |
Beta | 138 | Nein |
Release | 138 | Nein |
Präferenzname | dom.webnotifications.actions.enabled |
Grafik: Canvas, WebGL und WebGPU
WebGL: Entwurfserweiterungen
Wenn diese Präferenz aktiviert ist, werden alle WebGL-Erweiterungen, die sich derzeit im "Entwurf"-Status befinden und getestet werden, zur Nutzung freigegeben. Derzeit werden von Firefox keine WebGL-Erweiterungen getestet.
WebGPU API
Die WebGPU API bietet Unterstützung auf niedriger Ebene, um Berechnungen und Grafik-Rendering unter Verwendung des Graphics Processing Unit (GPU) des Geräts oder Computers eines Nutzers durchzuführen. Sehen Sie Firefox-Bug 1602129 für unseren Fortschritt zu 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"
und eine body
Eigenschaft aufweisen, 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 Reporting-Endpoints
oder Report-To
HTTP-Antwort-Headern definiert werden.
Der Bericht ist eine Serialisierung des oben beschriebenen Report
Objekts, mit einer body
Eigenschaft, die eine Serialisierung einer CSPViolationReportBody
Instanz ist.
Dieser Verstößebericht ersetzt einen ähnlichen, spezifischen CSP-Mechanismus zum Senden von Verstößenberichten, der die CSP report-uri
Direktive verwendet, um die URL des Berichts-Endpunkts festzulegen, und ein CSP-spezifischen JSON-Fehlermeldungs-Format hat.
(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 beinhalten diejenigen, 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 wurden.
Asynchrones Hinzufügen und Entfernen von SourceBuffer
Dies fügt die auf Versprechen basierenden Methoden appendBufferAsync()
und removeAsync()
zum Hinzufügen und Entfernen von Medienquellenpuffern zur SourceBuffer
Schnittstelle hinzu. Weitere Informationen finden Sie in Firefox-Bug 1280613 und Firefox-Bug 778617.
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ätsschwierigkeit
Die image.avif.compliance_strictness
Präferenz kann genutzt werden, um die Schwierigkeit zu steuern, die bei der Verarbeitung von AVIF Bildern angewendet wird.
Dies ermöglicht es Firefox-Nutzern, Bilder anzuzeigen, die in einigen anderen Browsern gerendert werden, auch wenn sie nicht streng konform sind.
Erlaubte Werte sind:
0
: Akzeptieren Sie Bilder mit Spezifikationsverletzungen in sowohl Empfehlungen ("sollte"-Sprache) als auch Anforderungen ("muss"-Sprache), vorausgesetzt, sie können sicher oder eindeutig interpretiert werden.1
(Standard): Verwerfen Sie Verletzungen der Anforderungen, lassen jedoch Verletzungen der Empfehlungen zu.2
: Streng. Verwerfen Sie Verletzungen in Anforderungen oder Empfehlungen.
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. Weitere Details finden Sie in Firefox-Bug 1539075.
Beachten Sie, dass, wie unten gezeigt, die Funktion nur in Nightly-Builds verfügbar ist (unabhängig davon, ob die Präferenz gesetzt 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 für das Styling beliebiger Textbereiche in einem Dokument (verallgemeinert das Verhalten anderer Highlight-Pseudo-Elemente wie ::selection
, ::spelling-error
, ::grammar-error
, und ::target-text
).
Die Bereiche werden in JavaScript mithilfe von Range
Instanzen definiert, die in einer 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.
Weitere Details finden Sie in Firefox-Bug 1703961.
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 ist auf dem Weg der Entfernung. Sie ist in allen Builds standardmäßig 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 Shadow DOM-Grenzen
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 ihr die ShadowRoot
Objekte übergeben werden, die diese Knoten enthalten.
Andernfalls wird sie einen Bereich zurückgeben, der neu fokussiert wurde, um den Hostknoten der shadow root, die den Knoten enthält, einzubeziehen.
Die Selection
Methoden setBaseAndExtent()
, collapse()
und extend()
wurden ebenfalls modifiziert, um Knoten innerhalb einer shadow root zu akzeptieren.
Benutzerselektionen über Maus, Tastatur und so weiter, können überall im Dokument beginnen und enden, einschließlich innerhalb jeglicher offener oder geschlossener shadow Bä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. Weitere Informationen finden Sie in Firefox-Bug 1057233.
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()
mapen den gegebenen Punkt, Rechteck oder Quadruple vom Node
, auf dem sie aufgerufen werden, zu einem anderen Knoten. (Mehr Details finden Sie in Firefox-Bug 918189).
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()
gibt die CSS-Boxen für einen Node
relativ zu einem anderen Knoten oder Viewport zurück. (Mehr Details finden Sie in Firefox-Bug 917755).
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 Fehlers, der während des Tests der Benutzeroberfläche auftrat, haben wir beschlossen, den Versand dieser API zu verschieben, während Diskussionen über potenzielle Änderungen an der API gehalten werden. Die Arbeit läuft weiter. (Siehe Firefox-Bug 1318984 für mehr 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, aber hinter einer Präferenz auf dem Desktop (es sei denn, unten angegeben).
Release-Kanal | Version geändert | 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 Orientierung zu sperren, wenn dies vom Gerät unterstützt und durch die Vorab-Anforderungen des Browsers erlaubt ist.
Typischerweise ist das Sperren der Ausrichtung nur auf mobilen Geräten erlaubt, wenn das Dokument im Vollbildmodus angezeigt wird.
Weitere Details finden Sie in Firefox-Bug 1697647.
Release-Kanal | Version geändert | Standardmäßig aktiviert? |
---|---|---|
Nightly | 111 | Ja |
Developer Edition | 97 | Nein |
Beta | 97 | Nein |
Release | 97 | Nein |
Präferenzname | dom.screenorientation.allow-lock |
Priorisierte Aufgabenplanung API
Die Prioritized Task Scheduling API bietet eine standardisierte Möglichkeit, alle Aufgaben einer Anwendung zu priorisieren, unabhängig davon, ob sie in einem Code des Website-Entwicklers oder in Drittanbieterbibliotheken und Frameworks definiert sind. (Firefox-Bug 1734997)
Diese Funktion wurde in Firefox Nightly in Firefox 101 aktiviert. Support in Firefox Nightly 135 wurde vorübergehend deaktiviert, um das Brechen in freier Wildbahn zu vermeiden.
Release-Kanal | Version geändert | 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 die Eigenschaft requireInteraction
, die standardmäßig auf Windows-Systemen und im Nightly-Release gesetzt ist (Firefox-Bug 1794475).
Release-Kanal | Version geändert | 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 Man-in-the-Middle (MitM) Angriffe durch Flash-Inhalte auf verschlüsselten Seiten zu mildern, wurde eine Präferenz hinzugefügt, um OBJECT_SUBREQUEST
s als aktiven Inhalt zu behandeln. Weitere Details finden Sie in Firefox-Bug 1190623.
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
|
Kennzeichnung unsicherer Seiten
Die zwei security.insecure_connection_text_*
Präferenzen fügen ein "Nicht sicher" Textlabel in die Adressleiste neben dem traditionellen Schlosssymbol hinzu, wenn eine Seite unsicher geladen wird (das heißt unter HTTP anstelle von HTTPS). Die browser.urlbar.trimHttps
Präferenz entfernt das https:
Präfix von Adresseleisten-URLs. Weitere Details finden Sie in Firefox-Bug 1853418.
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 Trimmen des https Präfix
|
Permissions Policy / Feature policy
Permissions Policy erlaubt Webentwicklern, bestimmte Funktionen und APIs im Browser selektiv zu aktivieren, zu deaktivieren und die Funktionalität zu ändern. Sie ist ähnlich wie CSP, aber steuert Funktionen anstatt Sicherheitsverhalten. Dies ist in Firefox als Feature Policy implementiert, der Name, der in einer früheren Version der Spezifikation verwendet wurde.
Beachten Sie, dass unterstützte Richtlinien durch das allow
Attribut auf <iframe>
Elementen gesetzt werden können, auch wenn die Benutzerprä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)
Die PPA API bietet eine Alternative zum Nutzer-Tracking für Werbezuschreibungen unter Verwendung des neuen navigator.privateAttribution
Objekts mit saveImpression()
und measureConversion()
Methoden. Mehr über PPA im Erklärer lesen. 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 Standardanforderungen und Bildanforderungen 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 Ursprungsseite navigiert, nicht jedoch für fremde Subanforderungen, um Bilder oder Frames in eine Drittanbieter-Site zu laden, und so weiter.
Weitere Details finden Sie in 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 umfasst nicht Authorization
Der Access-Control-Allow-Headers
ist ein Antwortheader auf eine CORS-Vorabanforderung, die angibt, welche Anforderungsheader in der endgültigen Anforderung enthalten sein können.
Die Antwortdirektive kann ein Wildcard (*
) enthalten, das angibt, dass die endgültige Anforderung alle Header außer dem Authorization
Header enthalten kann.
Standardmäßig enthält Firefox den Authorization
Header in der endgültigen Anforderung, nachdem es eine Antwort mit Access-Control-Allow-Headers: *
erhalten hat.
Stellen Sie die Präferenz auf false
, um sicherzustellen, dass Firefox den Authorization
Header nicht enthält.
Weitere Details finden Sie in 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 |
Entwickler-Werkzeuge
Mozillas Entwicklerwerkzeuge sind ständig in der Entwicklung. Wir experimentieren mit neuen Ideen, fügen neue Funktionen hinzu und testen sie auf den Nightly- und Developer Edition-Kanälen, bevor wir sie durch Beta und Release weitergeben. Die unten stehenden Funktionen sind der aktuelle Satz experimenteller Entwickler-Werkzeugfunktionen.