Firefox 26 release notes for developers
Firefox 26 was released on December 10, 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.
Changes for Web developers
>CSS
- The
text-decoration-lineproperty, still prefixed, now considers'blink'as a valid value, though it doesn't blink the content at all (Firefox bug 812995). - The non-standard
-moz-text-blinkproperty has been removed (Firefox bug 812995). - Support for the
image-orientationproperty, in its CSS Images & Values Level 4 version, that is with thefrom-imagekeyword and EXIF support, has been added (Firefox bug 825771). - Experimental support for
position: stickyhas been implemented and can be enabled by preflayout.css.sticky.enabled(Firefox bug 886646). - The
text-alignproperty now applies to the::-moz-placeholderpseudo-element (Firefox bug 915551).
HTML
- The
HTMLSelectElement.selectedOptionsproperty has been implemented (Firefox bug 596681). - In the
<input>element of typeemail, values with domain labels longer than 63 chars are no more considered valid (Firefox bug 884332). - The
HTMLInputElement.widthandheightproperties now return0when thetypeis notimage(Firefox bug 905240). - A
<fieldset>element is now invalid, and can be styled using the:invalidpseudo-class, when one of the elements it contains is invalid (Firefox bug 717181).
JavaScript
ECMAScript 2015 implementation continues!
- The ECMAScript 2015 compliant syntax for Generators (yield) has been implemented (Firefox bug 666399).
- Generator/Iterator results are now boxed like
{ value: foo, done: bool }(Firefox bug 907744). - New mathematical methods have been implemented on
Math:Math.fround()(Firefox bug 900125). - The reserved words cannot be used for function names:such a usage now throws a
SyntaxError(Firefox bug 907958). - The default parameter syntax has been updated to allow parameters without defaults after default parameters, such as
function f(x=1, y). See Firefox bug 777060. GeneratorFunctionis implemented (Firefox bug 904701).
Interfaces/APIs/DOM
- Make the last argument (doctype) to
DOMImplementation.createDocumentoptional (Firefox bug 909859). - Implement the new
element.classListspecification which permits adding/removing several classes with one call (Firefox bug 814014). - The
URL()constructor has been implemented on theURLinterface (Firefox bug 887364). - The properties
URLUtils.origin,URLUtils.password, andURLUtils.usernameare now available to all interfaces implementing theURLUtilsmixin:URL,Location,HTMLAnchorElement, andHTMLAreaElement(Firefox bug 887364). - The
URLinterface is now accessible from Web Workers (Firefox bug 887364). - IndexedDB can now be used as an "optimistic" storage area so it doesn't require any prompts and data is stored in a pool with LRU eviction policy, in short temporary storage (Firefox bug 785884).
- Support for
WaveShaperNode.oversamplehas been added (Firefox bug 875277). - Path of the persistent storage has been changed from
<profile>/indexedDBto<profile>/storage/persistent(on b2g from/data/local/indexedDBto/data/local/storage/persistent). - The
Screen.orientationproperty andScreen.lockOrientation()method now support thedefaultvalue, mapping toportrait-primaryorlandscape-primary, depending of the device (Firefox bug 908058) This works only for Firefox OS and Firefox for Android. Firefox Desktop is not supported. Eventconstructors can be used in Web workers (Firefox bug 910910).- Trying to set the
Document.domainproperty on a page embedded in an<iframe>with thesandboxattribute now throws a security error (Firefox bug 907892). - The
MessageEventinterface has been updated to comply with the latest spec. TheinitMessageEventmethod has been removed while the interface has now a constructor (Firefox bug 848294). - The HTML5
MessageChannelAPI has been implemented, behind thedom.messageChannel.enabledpreference (Firefox bug 677638). - Support for
VTTCue, behind themedia.webvtt.enabledpreference, like for all WebVTT-related implementations, has been added (Firefox bug 868509). - The Web Audio API has been made available by default (Firefox bug 885505).
MathML
- Inconsistent renderings of
<mmultiscripts>,<msub>,<msup>and<msubsup>have been unified and the error handling of these elements has been improved (Firefox bug 827713).
SVG
- The inclusion of SVG glyphs inside OpenType, SVG-in-OpenType, has been updated to match the current version of the specification (Firefox bug 906521).
- The
SVGElement.ownerSVGElement()method doesn't throw anymore (Firefox bug 835048).
Development tools
- The Inspector is now remotable (Firefox bug 805526).
- The web console text can be selected,
::beforeand::afternow inspectable, debugger and responsive design features are planned for this release. (https://hacks.mozilla.org/2013/09/new-features-in-the-firefox-developer-tools-episode-26/)