Firefox 54 für Entwickler
Firefox 54 wurde am 13. Juni 2017 veröffentlicht. Dieser Artikel listet wichtige Änderungen auf, die für Webentwickler nützlich sind.
Änderungen für Webentwickler
Entwicklerwerkzeuge
- Die Netzwerkabfragezusammenfassung umfasst nun die tatsächlich übertragenen Datenmengen ("übertragene Größe"), ebenso wie die Leistungsanalyseansicht (Firefox-Bug 1168376).
- Die Ansicht der Netzwerkabfrage-Header enthält jetzt Links zur zugehörigen Dokumentation auf MDN (Firefox-Bug 1320233).
CSS
clip-path
unterstützt jetzt basic shapes (Firefox-Bug 1247229).- Firefox's Implementierungen von CSS Flexbox und CSS-Ausrichtung implementieren nun die aktualisierte Spezifikationssprache für die Interaktionen zwischen den Eigenschaften
align-items
undalign-self
sowie zwischenjustify-items
undjustify-self
(Firefox-Bug 1340309). <input>
-Elemente der Typencheckbox
undradio
, bei denen-moz-appearance: none
gesetzt ist, sind nun nicht mehr ersetzte Elemente, um die Kompatibilität mit anderen Browsern zu gewährleisten (Firefox-Bug 605985).- Zuvor hatte ein mit
display
:inline-block
gestyltes Element mit einem Kindelement vom TypHTMLInputElement
, das mitdisplay:block
gestylt war, eine falsche Grundlinie (Firefox-Bug 1330962). Dies wurde nun behoben. - Als Mozilla dedizierte Inhaltsthreads in Firefox einführte (durch das Electrolysis- oder e10s-Projekt), wurde die Unterstützung für das Styling von
<option>
-Elementen vorübergehend entfernt. Ab Firefox 54 können Sie wieder Vordergrund- und Hintergrundfarben für<option>
-Elemente verwenden, indem Sie die Attributecolor
undbackground-color
verwenden. Weitere Informationen finden Sie unter Firefox-Bug 910022. Beachten Sie, dass dies auf Linux aufgrund fehlender Kontraste noch deaktiviert ist (siehe Firefox-Bug 1338283 für Fortschritte in dieser Angelegenheit). - CSS-Animationen senden jetzt das
animationcancel
-Ereignis wie erwartet, wenn eine Animation vorzeitig abbricht (Firefox-Bug 1302648). - Transparente Farben (d.h. solche mit einem Alphakanal von 0) wurden in bestimmten Situationen als
transparent
Farbschlüsselwort serialisiert; dies wurde behoben, sodass Firefox der Spezifikation folgt (sowie den Implementierungen anderer Browser). Siehe (Firefox-Bug 1339394 für weitere Informationen. - Die proprietäre Pseudoklasse
:-moz-table-border-nonzero
ist nicht länger für Web-Inhalte verfügbar; sie ist nun auf das interne UA-Stylesheet von Firefox beschränkt (Firefox-Bug 1341925). - [css-grid] Intrinsischer Inhalt mit overflow:auto überlappt in Grid (Firefox-Bug 1348857).
- [css-grid] Übertragener Min-Size-Beitrag eines prozentual großen Gitterelements mit einem intrinsischen Verhältnis (Firefox-Bug 1349320).
JavaScript
\b
und\B
inRegExp
mit den Flags"u"
(Unicode) und"i"
(Groß-/Kleinschreibung nicht beachtet) behandeln jetzt U+017F (LATIN SMALL LETTER LONG S) und U+212A (KELVIN SIGN) als Wortzeichen (Firefox-Bug 1338373).- Der
DataView
-Konstruktor löst jetzt einenRangeError
aus, wenn derbyteOffset
-Parameter außerhalb vonNumber.MAX_SAFE_INTEGER
(>= 2 ** 53) liegt (Firefox-Bug 1317382). - Die
Date.UTC()
-Methode wurde aktualisiert, um mit ECMAScript 2017 konform zu sein, wenn weniger als zwei Argumente bereitgestellt werden (Firefox-Bug 1050755). - Die
Function.prototype.toString()
-Methode wurde aktualisiert, um mit der neuesten vorgeschlagenen Spezifikation übereinzustimmen (Firefox-Bug 1317400).
DOM & HTML DOM
- Die [
URL.toJSON()
]-Methode(/de/docs/Web/API/URL/toJSON) wurde implementiert (Firefox-Bug 1337702). - Der [
URLSearchParams()
]-Konstruktor(/de/docs/Web/API/URLSearchParams/URLSearchParams) akzeptiert nun ein Record mit Zeichenfolgen als Init-Objekt (Firefox-Bug 1331580). - Die Werte, die von
KeyboardEvent.key
für druckbare Tasten zurückgegeben werden, wenn die Steuerungstaste ebenfalls gedrückt wird, wurden auf macOS (außer wenn die Command-Taste gedrückt wird) korrigiert (Firefox-Bug 1342865). - Die
dom.workers.latestJSVersion
-Voreinstellung, die hauptsächlich implementiert wurde, um Probleme bei der Verwendung vonlet
in Workern zu umgehen (aufgrund von Firefox-Bug 855665, welcher inzwischen behoben wurde), wurde entfernt (siehe Firefox-Bug 1219523). - Die
event.timeStamp
-Eigenschaft gibt jetzt eine hochauflösende monotone Zeit (DOMHighResTimeStamp
) zurück, anstatt einen Wert, der die Unix-Time in Millisekunden darstellt.
Web Workers und Service Workers
WorkerGlobalScope.close
ist jetzt stattdessen aufDedicatedWorkerGlobalScope
undSharedWorkerGlobalScope
verfügbar. Diese Änderung wurde vorgenommen, um zu verhindern, dassclose()
auf Service Workern verfügbar ist, da es dort nicht verwendet werden soll und beim Aufruf immer eine Ausnahme auslöst (siehe Firefox-Bug 1336043).- Die
Window.origin
-Eigenschaft und dieWorkerGlobalScope.origin
wurden implementiert (siehe Firefox-Bug 1306170). - Die
Client.type
-Eigenschaft wurde implementiert (siehe Firefox-Bug 1339844). Clients.matchAll()
gibt jetztClient
-Objekte in der Reihenfolge des zuletzt fokussierten Clients zurück (siehe Firefox-Bug 1266747).- Einige Änderungen wurden im beobachteten Verhalten vorgenommen, wenn der [
Request()
]-Konstruktor(/de/docs/Web/API/Request/Request) ein vorhandenesRequest
-Objekt-Instanz erhält, um eine neue Instanz zu erstellen. Die folgenden neuen Verhaltensweisen sind dazu gedacht, die Sicherheit zu bewahren, während sie es dem Konstruktor weniger wahrscheinlich machen, Ausnahmen auszulösen:- Wenn dieses Objekt auf einem anderen Ursprung im Vergleich zum Aufruf des Konstruktors existiert, wird die
Request.referrer
entfernt. - Wenn dieses Objekt einen
Request.mode
vonnavigate
hat, wird dermode
-Wert insame-origin
umgewandelt.
- Wenn dieses Objekt auf einem anderen Ursprung im Vergleich zum Aufruf des Konstruktors existiert, wird die
Audio/Video
Allgemein
- Die 5.1 Surround-Sound-Wiedergabe ist jetzt standardmäßig auf Windows, macOS und Linux aktiviert (Firefox-Bug 1334508, Firefox-Bug 1321502 und Firefox-Bug 1323659).
Media Capture und Streams-API
- Die Verwendung eines [
MediaStream
]-Objekts(/de/docs/Web/API/MediaStream) als Eingabeparameter zuURL.createObjectURL()
wurde veraltet — die Konsole zeigt jetzt eine Warnung an (siehe Firefox-Bug 1334564). Es wird empfohlen, stattdessenHTMLMediaElement.srcObject
zu verwenden.
Web Audio API
- Die Methode
AnalyserNode.getFloatFrequencyData()
stellt jetzt stumme Samples im zurückgegebenen Buffer korrekt mit dem Wert-Infinity
dar (Firefox-Bug 1336098). AudioParam.setValueCurveAtTime()
löst jetzt eineTypeError
-Ausnahme aus, wenn einer der angegebenen Werte nicht endlich ist (Firefox-Bug 1308437).
Encrypted MediaExtensions API
- Der
MediaKeySession.keySystem
-String wurde aus der Spezifikation entfernt, und als solches haben wir ihn aus Firefox 54 entfernt (Firefox-Bug 1335555). - Unterstützung wurde für den VP9-Codec in verschlüsselten Streams unter Verwendung von Clear Key und Widevine hinzugefügt (Firefox-Bug 1338064).
- Zuvor durfte MSE nur WebM/VP8-Video verwenden, wenn das System als "schnell genug" angesehen wurde. Jetzt wird die Wiedergabe von VP8-codierten
webm/video
-Medien immer unterstützt, unabhängig von der Systemleistung.
WebRTC
- TCP-ICE-Kandidatenunterstützung, ursprünglich in Firefox 41 hinzugefügt, ist jetzt standardmäßig aktiviert. Dadurch kann die ICE-Schicht Kandidaten in Betracht ziehen, die anstelle des bevorzugten UDP TCP für die Übertragung verwenden. Dies kann in Umgebungen nützlich sein, in denen UDP blockiert ist (Firefox-Bug 1176382). Dieser Blogbeitrag erklärt das Feature ausführlicher.
Entfernungen aus der Webplattform
CSS
- Die
-moz
-präfixierten Versionen der Werteisolate
,isolate-override
undplaintext
für dieunicode-bidi
-Eigenschaft wurden entfernt (Firefox-Bug 1333675).
HTTP
- Unterstützung für HTTP/1-Pipelining wurde in Firefox 54 entfernt. Die Beibehaltung ist angesichts der Kompatibilitäts- und Leistungsprobleme von Pipelining nicht wert, da wir uns in eine neue Welt voller HTTP/2 und anderer wesentlicher, standardisierter Verbesserungen der Netzwerkleistung bewegen. Die Voreinstellung
network.http.pipelining
(sowie die anderen Präferenzen, die mit "network.http.pipelining" beginnen) wird jetzt ignoriert. Weitere Informationen finden Sie unter Firefox-Bug 1340655.
Ältere Versionen
- Firefox 53 für Entwickler
- Firefox 52 für Entwickler
- Firefox 51 für Entwickler
- Firefox 50 für Entwickler
- Firefox 49 für Entwickler
- Firefox 48 für Entwickler
- Firefox 47 für Entwickler
- Firefox 46 für Entwickler
- Firefox 45 für Entwickler
- Firefox 44 für Entwickler
- Firefox 43 für Entwickler
- Firefox 42 für Entwickler
- Firefox 41 für Entwickler
- Firefox 40 für Entwickler
- Firefox 39 für Entwickler
- Firefox 38 für Entwickler
- Firefox 37 für Entwickler
- Firefox 36 für Entwickler
- Firefox 35 für Entwickler
- Firefox 34 für Entwickler
- Firefox 33 für Entwickler
- Firefox 32 für Entwickler
- Firefox 31 für Entwickler
- Firefox 30 für Entwickler
- Firefox 29 für Entwickler
- Firefox 28 für Entwickler
- Firefox 27 für Entwickler
- Firefox 26 für Entwickler
- Firefox 25 für Entwickler
- Firefox 24 für Entwickler
- Firefox 23 für Entwickler