files/en-us/mozilla/firefox/releases/18/index.md
Firefox 18 was released on January 8, 2013. This article lists key changes that are useful not only for web developers, but also Firefox and Gecko developers as well as add-on developers.
reversed attribute of the {{HTMLElement("ol")}} element is now supported (Firefox bug 601912).crossorigin attribute of the {{HTMLElement("link")}} element is now supported (Firefox bug 786564).allowfullscreen attribute of the {{HTMLElement("iframe")}} has been implemented and its prefixed predecessor mozallowfullscreen is now deprecated.auto keyword as initial value (This has an effect only on flex items as it resolves to 0, the previous initial value, for other items). (Firefox bug 763689)!important rules override CSS animations. (Firefox bug 783714)layout.css.flexbox.enabled to true (Firefox bug 666041).navigator.mozPay has been landed. (Firefox bug 767818)window.devicePixelRatio has been landed. (Firefox bug 564815)window.navigator.battery has been implemented. (Firefox bug 696045)MozBlobBuilder is removed. Developers need to use {{domxref("Blob")}} constructor for creating a Blob object. (Firefox bug 744907)HTMLMediaElement.src has been separate in two properties: the standard src property, dealing with strings, and the prefixed mozSrcObject property, dealing with media streams (Firefox bug 792665).Array of strings as argument (Firefox bug 784549.contains() method is now implemented on strings. This is unfortunately not compatible with Mootools 1.2, which expects different behavior from contains() on strings but does not ensure it. Newer versions of Mootools fix this issue; sites should upgrade their Mootools version to something newer than 1.2.ALLOW-FROM syntax of the X-FRAME-OPTIONS HTTP Response header is now supported (Firefox bug 690168).nsIStreamListener
aOffset) of onDataAvailable() method changes to unsigned long long. (Firefox bug 784912)nsIUploadChannel
setUploadStream() supports over 2GB content-length (Firefox bug 790617)nsIEditor
addEditorObserver() has been removed, use setEditorObserver() instead, removeEditorObserver() no longer takes a nsIEditorObserver parameter (Firefox bug 785091)nsIHttpProtocolHandler
http-on-modify-request observers are no longer guaranteed to be called synchronously during nsIChannel.asyncOpen().
For observers that need to be called during asyncOpen(), the new http-on-opening-request observer topic has been added. See (Firefox bug 800799)nsIProtocolProxyService
resolve method has been removed. Now, only the asyncResolve method can be used. See (Firefox bug 769764)The following interfaces have been removed.
nsIEditorObserver