This report outlines known implementations for the features added between HTML 5.0 and HTML 5.1.
Implementation information is documented in the relevant Github issue, Pull Request (PR), or documentation for developers.
Documented changes
New features
Blink | Firefox - Gecko | Edge | Internet Explorer | Safari - Webkit | Notes | |
---|---|---|---|---|---|---|
HTMLInputElement.reportValidity() |
Chrome, Opera | Y | N | N | N | |
HTMLMediaElement.fastseek() |
N | Y | N | N | Y | |
HTMLElement.forceSpellcheck() |
All | |||||
<Input type="week"> |
Yandex, Chrome | N | Y | N | N | |
<input type="month"> |
Chrome, Yandex | N | Y | N | N | |
<input type="datetime-local"> |
Yandex, Chrome | N | Y | N | N | |
ImageBitmap interface |
Chrome, Opera | Y | N | N | N | |
<picture> |
Chrome, Opera, Yandex | Y | Y | N | Y | |
<img srcset=""> |
Y | Y | Y | N | Y | |
<details> and <summary> |
Y | Y | N | N | Y | |
<iframe allowfullscreen> |
All | |||||
registerProtocolHandler() |
Y | Y | N | N | N | |
<menu type="context"> |
Chrome, Opera, Yandex | Y | N | N | N | |
<menuitem> |
Y | Y | N | N | N | |
XMLDocument interface |
Y | Y | Y | Y | Y | |
Restore <a rev=""> |
No browser behaviour required | Search engines, RDFa validators - Google, Yandex, … |
Improvements to existing features
Scroll restoration changes
Blink | Firefox - Gecko | Edge | Internet Explorer | Safari - Webkit | Notes | |
---|---|---|---|---|---|---|
Add history.scrollRestoration |
Y | Y | N | N | N | |
Clarify manual scroll restoration mode | Y | Y | Y | Y | Y |
Cross-origin changes
Blink | Firefox - Gecko | Edge | Internet Explorer | Safari - Webkit | Notes | |
---|---|---|---|---|---|---|
Allow cross-origin <track> and eventSource |
Yandex | * | ? | ? | Y | Firefox doesn't seem to show the captions, despite loading them. |
Yes? | Yes? | ? | ? | ? | eventSource appears to work cross-origin with the correct headers in related testing of Blink (Yandex) and Gecko, but this feature may not have been tested thoroughly. The bugfix was in one piece of the spec that covers both cases. |
|
Let FrameElement return null in cross-origin situations |
? | Y | ? | ? | Y | Rough test |
Change ImageBitmap to allow cross-origin content |
Y | Y | Not Testable | Not Testable | Not Testable |
Collections changes
Blink | Firefox - Gecko | Edge | Internet Explorer | Safari - Webkit | Notes | |
---|---|---|---|---|---|---|
<fieldset> no longer utilises HTMLFormControlsCollection |
N | Y | Not Testable | Not Testable | Y | |
Make <fieldset>.elements return an HTMLCollection |
N | Y | Non Testable | Non Testable | Y | |
Reference namedItem method from HTMLCollection not HTMLOptionsCollection |
N | Y | Y | N | N |
SVG compatibility fixes
Blink | Firefox - Gecko | Edge | Internet Explorer | Safari - Webkit | Notes | |
---|---|---|---|---|---|---|
Describe SVG versions implemented in browsers | Opera, Yandex | Y | N | N | Y | non-scaling-stroke for vector-effect - test |
Y | class attribute |
|||||
Yandex | N | Y | Y | Y | tabindex attribute |
|
Y | Allow ARIA attributes - demonstrated by multiple examples | |||||
Make SVG <title> first child not last |
Yandex, Chrome | Y | N | N | Y | Yandex, Firefox, Chrome and Safari all expose the first title child in raw SVG. In SVG embedded in HTML, Firefox and Safari expose the first child title element as a tooltip |
Table compatibility fixes
Blink | Firefox - Gecko | Edge | Internet Explorer | Safari - Webkit | Notes | |
---|---|---|---|---|---|---|
Make <thead> and <tfoot> ordering reflect reality |
Y | Y | Y | Y | Y | |
Add specific HTMLTableElement types |
Yandex | Y | Y | Y | N | |
Disallow <tfoot> before <tbody> |
No browser behaviour required | Not implemented in validator.w3.org |
Changes relating to other specifications
Isolated integrations
Blink | Firefox - Gecko | Edge | Internet Explorer | Safari - Webkit | Notes | |
---|---|---|---|---|---|---|
Add requestAnimationFrame |
Y | |||||
Add callout to detach from <media> |
Y | For MSE | ||||
Integrate Resource Hints | Not Testable | prefetch feature | ||||
Make HTMLAllCollection to match WebIDL |
Y | |||||
Integrate encoding specification | Y | Defer some encoding specifics to WHATWG Encoding spec | ||||
Take account of srclang when rendering <track> |
Not Testable | For WebVTT | ||||
Define enqueueJob() and nextJob() monkeypatching ECMAScript |
Y | Y | Y | N | Y | Explains Promise resolution in terms of Microtasks -- tests Promises use Microtask timing |
CSP hooks
Blink | Firefox - Gecko | Edge | Internet Explorer | Safari - Webkit | Notes | |
---|---|---|---|---|---|---|
Add CSP-list to the global object | Not Testable | Not testable implementation detail to support CSP. | ||||
Add hooks for inline elements | Y | Y | Y | N | Y | script/style-src 'unsafe-inline' applies to element |
Add hooks for CSP and Realms from ECMASCript | Y | N | N | N | Y | Much of this change is Not Testable, except for nonce support IDL (on style/script) |
Move "https state" from Window to Document |
Not Testable | Implementation detail: conceptual storage of HTTPS State. |
Uncertain implementations
One known implementation
:dir
CSS selector matching- Only in Firefox. This defines how a CSS selector works with HTML when implemented, so the lack of implementation doesn't cause interop problems for browsers. A warning for authors not to rely on this feature yet is in the specification.
.tFoot
and.createTFoot
to always insert at the end- Only in Firefox. There is poor interoperability of this in general, so it is unlikely to affect Web Compatibility, but this change matches a similar one in the WHATWG specification. A warning for authors not to rely on this feature yet is in the specification.
- Promise rejection handling with
rejectionhandled
andunhandledrejection
events - This features is currently only known to be implemented in blink, and a warning to authors that it is not yet reliable is in the specification.
No known implementations
probablySupportsContext
- This convenience function for canvas has no known implementation. A warning for authors not to rely on this feature yet is in the specification.
- Use
close()
blob from File API - This method does not appear to have implementation, and may in future be removed from File API. In the HTML specification, it is mentioned in an algorithm, to take account of any implementation, in a way that means partial implementation does not introduce an interoperability problem. A warning for authors not to rely on this feature is in the specification.
- CSP hooks for inline events and styles
- This part of CSP does not appear to have implementation, but seems likely to be implemented in the near future. In the HTML specification, it is mentioned in an algorithm, to take account of any implementation, in a way that means partial implementation does not introduce an interoperability problem. Warnings for authors not to rely on this feature yet are in the specification.