[whatwg] Validation

Thomas Broyer t.broyer at gmail.com
Tue Jul 21 06:11:05 PDT 2009

On Tue, Jul 21, 2009 at 1:02 PM, Philip Taylor wrote:
> (The HTML5 doctype reflects that in practice there aren't several
> independent carefully-separated languages - there's just a single
> vaguely-defined mess called HTML, described in a range of
> specifications and sometimes not specified at all, implemented
> incrementally with various extensions and bugs and missing features in
> various browsers, with people writing pages that mix all the different
> features together. The version numbering is an artifact of the W3C's
> process of developing a numbered sequence of specifications, and isn't
> aligned with how HTML browsers or documents are usually written.


To add to that, think about JavaScript and CSS support, and new
features introduced by HTML5:
 - Safari has <canvas> for some time now, but only Safari 4 has
tabindex="" turning elements into "focusable" items (leading JS
libraries to hack around this with hidden form elements –as only those
are in "tab order" by default–); Safari also innovates in the CSS
field although it isn't yet perfect re. CSS 2 support (no browser is
perfect, and Safari has amongst the best CSS support). It does support
(some draft version of) WebDatabase and geolocation APIs yet not
 - Firefox/Mozilla is a leading actor in the JS field and supports E4X
as well as not-yet-standardized JS features ("for each" loop,
generators and iterators, destructuring assignment, array
comprehensions, "let", etc.), yet it too has incomplete (though mostly
complete) support for CSS 2.1.
 - Opera is/was the first to support (part of) Web Forms 2.0 (now
merged into HTML5)
As for CSS, many browsers started to support some CSS 2 and now CSS 3
selectors without having complete support for CSS 1 and CSS 2
properties or even syntax (e.g. the "double class selector bug" in
Internet Explorer)

> If you want to check that your pages are compatible with certain
> browser releases, the language version number is a very bad
> approximation - you'd want a tool that understands what features IE10
> supports (maybe some (but not all) from HTML4, some (but not all) from
> HTML5, some proprietary extensions, etc), and it would be misleading
> to think that a pure HTML-version-N validator is going to be good
> enough for that.

I'd add that some HTML editors have switched to this kind of
"selectors" too (a while ago, you turned "netscape navigator" support
off and <layer> started to be flagged as errors, same for <blink> for
Internet Explorer, and same thing for JavaScript: document.all vs.
document.layers vs. document.getElementById, elt.attachEvent vs.
elt.addEventListener, etc.)

For example, Microsoft Expression Web 2 has an "IE6" mode in
IntelliSense CSS settings:

Thomas Broyer

More information about the whatwg mailing list