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 Zusammenfassung der Netzwerkabfragen enthält jetzt die tatsächlich übertragene Datenmenge ("übertragene Größe"), ebenso wie die Ansicht der Leistungsanalyse (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 einfache Formen (Firefox Bug 1247229).
  • Die Implementierungen von Firefox für CSS Flexbox und CSS-Ausrichtung implementieren jetzt die aktualisierte Spezifikationssprache für Interaktionen zwischen den Eigenschaften align-items und align-self sowie zwischen justify-items und justify-self (Firefox Bug 1340309).
  • <input>-Elemente der Typen checkbox und radio mit -moz-appearance: none gelten jetzt als nicht ersetzte Elemente, um die Kompatibilität mit anderen Browsern zu gewährleisten (Firefox Bug 605985).
  • Zuvor hatte ein Element, das mit display: inline-block und einem Kindelement des Typs HTMLInputElement mit display:block gestyled war, eine falsche Basislinie (Firefox Bug 1330962). Dies wurde nun behoben.
  • Als Mozilla dedizierte Content-Threads 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 Vorder- und Hintergrundfarben auf <option>-Elemente anwenden, indem Sie die Attribute color und background-color verwenden. Siehe Firefox Bug 910022 für weitere Informationen. Beachten Sie, dass dies unter Linux immer noch deaktiviert ist, da es an Kontrast fehlt (siehe Firefox Bug 1338283 für den Fortschritt in dieser Angelegenheit).
  • CSS-Animationen senden das animationcancel-Ereignis jetzt wie erwartet, wenn eine Animation vorzeitig abgebrochen wird (Firefox Bug 1302648).
  • Transparente Farben (d.h. solche mit einem Alphakanal von 0) wurden in bestimmten Situationen fälschlicherweise in das transparent color keyword 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 in Webinhalten nicht mehr verfügbar; sie ist nun auf das interne UA-Stylesheet von Firefox beschränkt (Firefox Bug 1341925).
  • [css-grid] Intrinsische Inhalte mit overflow:auto überlappen im Raster (Firefox Bug 1348857).
  • [css-grid] Übertragene Mindestgröße eines prozentualen Größen-Rasteritems mit einem intrinsischen Verhältnis (Firefox Bug 1349320).

JavaScript

DOM & HTML DOM

Web Workers und Service Workers

  • WorkerGlobalScope.close ist jetzt stattdessen verfügbar auf DedicatedWorkerGlobalScope und SharedWorkerGlobalScope. Diese Änderung wurde vorgenommen, um zu verhindern, dass close() in Service Workern verfügbar ist, da es dort nicht verwendet werden soll und immer eine Ausnahme wirft, wenn es aufgerufen wird (siehe Firefox Bug 1336043).

  • Die Window.origin-Eigenschaft und die WorkerGlobalScope.origin wurden implementiert (siehe Firefox Bug 1306170).

  • Die Client.type-Eigenschaft wurde implementiert (siehe Firefox Bug 1339844).

  • Clients.matchAll() gibt jetzt Client-Objekte in der am kürzesten fokussierten Reihenfolge zurück (siehe Firefox Bug 1266747).

  • Einige Änderungen wurden am beobachteten Verhalten vorgenommen, wenn der Request()-Konstruktor ein vorhandenes Request-Objektinstanz übergeben bekommt, um eine neue Instanz zu erstellen. Die folgenden neuen Verhaltensweisen sollen die Sicherheit gewährleisten und gleichzeitig den Konstruktor weniger anfällig für Ausnahmen machen:

    • Wenn dieses Objekt zu einem anderen Ursprung als dem des Konstruktorrufs gehört, wird der Request.referrer entfernt.
    • Wenn dieses Objekt einen Request.mode von navigate hat, wird der mode-Wert in same-origin umgewandelt.

Audio/Video

Allgemein

Media Capture und Streams API

Web Audio API

API für verschlüsselte Medienerweiterungen

  • Der MediaKeySession.keySystem-String wurde aus der Spezifikation entfernt, und daher haben wir ihn aus Firefox 54 entfernt (Firefox Bug 1335555).
  • Unterstützung wurde für den VP9-Codec in verschlüsselten Streams mit Clear Key und Widevine hinzugefügt (Firefox Bug 1338064).
  • Zuvor war MSE nur erlaubt, WebM/VP8-Video zu verwenden, wenn das System als "schnell genug" galt. Jetzt wird die Wiedergabe von VP8-codierten webm/video-Medien immer unterstützt, unabhängig von der Systemleistung.

WebRTC

  • TCP ICE-Kandidatenunterstützung, die ursprünglich in Firefox 41 hinzugefügt wurde, ist jetzt standardmäßig aktiviert. Dies ermöglicht es der ICE-Schicht, Kandidaten in Betracht zu ziehen, die TCP anstelle des bevorzugten UDP 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 genauer.

Entfernungen von der Webplattform

CSS

  • Die -moz-präfixierten Versionen von isolate, isolate-override und plaintext-Werten für die unicode-bidi-Eigenschaft wurden entfernt (Firefox Bug 1333675).

HTTP

  • HTTP/1-Pipelining-Unterstützung wurde in Firefox 54 entfernt. Diese aufrechtzuerhalten, während wir den Übergang zu einer neuen Welt voller HTTP/2 und anderer wesentlicher, standardisierter Verbesserungen der Netzwerkleistung vollziehen, ist aufgrund der Kompatibilitäts- und Leistungsprobleme von Pipelining nicht sinnvoll. Die network.http.pipelining-Präferenz (sowie die anderen Präferenzen, die mit "network.http.pipelining" beginnen) wird jetzt ignoriert. Siehe Firefox Bug 1340655 für weitere Informationen.

Ältere Versionen