Firefox 54 for developers

Firefox 54 was released on June 13, 2017. This article lists key changes that are useful for web developers.

Changes for Web developers

Developer Tools

  • The network request summary now includes the amount of data actually transferred ("transferred size"), as does the performance analysis view (bug 1168376).
  • The network request headers view now links to the related documentation on MDN (bug 1320233).

CSS

  • clip-path now supports basic shapes (bug 1247229).
  • Firefox's implementations of CSS Flexbox and CSS alignment now implement updated spec language for interactions between the properties align-items and align-self as well as between justify-items and justify-self (bug 1340309).
  • <input> elements of types checkbox and radio with -moz-appearance: none; set on them are now non-replaced elements, for compatibility with other browsers (bug 605985).
  • Previously, an element styled with display: inline-block with a child element of type HTMLInputElement styled with display:block had a wrong baseline (bug 1330962). This is now fixed.
  • When Mozilla introduced dedicated content threads to Firefox (through the Electrolysis or e10s project), support for styling <option> elements was removed temporarily. Starting in Firefox 54, you can apply foreground and background colors to <option> elements again, using the color and background-color attributes. See bug 910022 for more information. Note that this is still disabled in Linux due to lack of contrast (see bug 1338283 for progress on this).
  • CSS Animations now send the animationcancel event as expected when an animation aborts prematurely (bug 1302648).
  • Transparent colors (i.e. those with an alpha channel of 0) were being serialized to the transparent color keyword in certain situations; this has been fixed so that Firefox follows the spec (as well as other browsers' implementations). See (bug 1339394 for further information.
  • The proprietary :-moz-table-border-nonzero pseudo-class is no longer available to web content; it is now restricted to Firefox's internal UA stylesheet (bug 1341925).
  • [css-grid] Intrinsic content with overflow:auto overlaps in grid (bug 1348857).
  • [css-grid] Transferred min-size contribution of percentage size grid item with an intrinsic ratio (bug 1349320).

JavaScript

DOM & HTML DOM

Web Workers and Service Workers

Audio/Video

General

Media Capture and Streams API

Web Audio API

Encrypted MediaExtensions API

  • The MediaKeySession.keySystem string has been removed from the specification, and as such we've taken it out of Firefox 54 (bug 1335555).
  • Support has been added for the VP9 codec in encrypted streams using Clear Key and Widevine (bug 1338064).
  • Previously, MSE was only allowed to use WebM/VP8 video if the system was considered "fast enough." Now playback of VP8-encoded webm/video media is always supported, regardless of system performance.

WebRTC

  • TCP ICE candidate support, originally added in Firefox 41, is now enabled by default. This allows the ICE layer to consider candidates that use TCP rather than the preferred UDP for transmission. This can be useful in environments in which UDP is blocked (bug 1176382). This blog post explains the feature in more details.

Removals from the web platform

CSS

  • Removed the -moz prefixed versions of isolate, isolate-override, and plaintext values for the unicode-bidi property (bug 1333675).

HTTP

  • HTTP/1 Pipelining support has been removed in Firefox 54. Maintaining it as we make the move into a new world full of HTTP/2 and other substantial, standardized improvements to networking performance is not worthwhile given pipelining's compatibility and performance issues. The network.http.pipelining preference (as well as the other preferences that start with "network.http.pipelining") is now ignored. See bug 1340655 for further information.

Older versions