Frequently Asked Questions (FAQ) about the future of XHTML [w3.org]:
|W3C recognizes the importance of a clear signal to the community about the future of HTML. (...) |
Work will stop on these documents (likely to be published as Group Notes):
XHTML Modularization 1.0 Second Edition
The remaining time left for the XHTML 2 Working Group will be dedicated to bug-fixing in the XHTML 1.1 specification and handing over some elements of their work to the HTML working group.
All XHTML development has now officially stopped - other than fixing DTD errors in a virtually-unused minimalized version of XHTML (version 1.1).
The writing was on the wall, obviously, ever since the W3C's re-adoption of HTML via the integration of the HTML5 development in the relaunched HTML working group. The path forward for XHTML is now only HTML5 - let's hope that authoring tools are quickly updated to reflect the new direction.
[edited by: encyclo at 1:30 am (utc) on July 3, 2009]
So what does it mean exactly for those that are used to code with a XHTML syntax (but still just deliver it as text, not xml)? Or if we wish to convert our current XHTML sites to HTML5 in the future?
HTML 5 still does include XHTML5 AFAIK, so the path forward is easy: XHTML5
The actual number of sites using "true" XHTML (with an XML mime type) is virtually zero. All the other sites using XHTML 1.0 syntax will continue to function just as well as before, as in reality the are merely slightly defective HTML 4.01 sites. There is really no pressure to "upgrade" or convert.
Now that the HTML5 is both the de-facto and de-jure future of HTML, then as web developers the main choices are either HTML4.01 or HTML5 for new projects. My hope, now that this inevitable decision has now been made, is that content-generating tools such as Dreamweaver or Microsoft's web programs, as well as major CMS projects such as WordPress start the switch to using HTML5 syntax as standard.
Is HTML 5 really a viable option for today's web projects? It seems to me that we still have quite a substantial lack of browser support.
|as in reality the are merely slightly defective HTML 4.01 sites |
Is "defective" really the right word? It seems to me it's more or less just a cleaner way to write code (closing all your tags, etc).
Apart from self-closing tags (e.g. <br /> and <hr />) all closing tags (e.g </p> and >/em> etc) ARE valid HTML (cf Xhtml)
|It seems to me it's more or less just a cleaner way to write code (closing all your tags, etc). |
Anyone who knows enough to care enough will have no problem doing a 'find 'n' replace'
> Is HTML 5 really a viable option for today's web projects?
> It seems to me that we still have quite a substantial lack
> of browser support.
With MSIE, Firefox and now Chrome there are three browsers that seriously compete, and even MS finally has started to follow standards (rather than making up their own). Firefox 3.5 has already some HTML5 implemented, and Chrome for sure will follow soon. But I would not use <video> or <canvas> for another year or two.
For some time now, I have been using the empty DTD for HTML5 in my projects ( <!DOCTYPE html> ). So, this effectively is a switch to HTML5. Google for a brief period of time used it also, but I guess they at the end of the day didn't see the need for DTD's, even if they're empty.
I'm using <menu> instead of <ul> in menus, which is valid in HTML5, but deprecated in HTML4. It works fine in all browsers, as it was part of HTML3. It's just that the Tidy validator plugin in Firefox doesn't know yet of the exsistentce of HTML5 and the fact that <menu> is no longer considered "obsolete", which is annoying. (<menu> is better semantics, of course, than <ul> in menus.)
Glad the W3C XHTML path has finally come to an end. I never used it in projects I had control of, as I never saw any real advantage to it, and thought the closing of single tags only made my code less readable. I mostly used HTML4 Strict, as I wanted to keep open the option of eventually switching to XHTML, but HTML5 seems more rational to me now.
I'm hoping all the CMS's will now also switch to HTML5, and abandon the useless XHTML DTD's and syntax. Virtually noone will use the required XHTML MIME headers on their servers in the future anyway, as is the case now.
[edited by: Solution1 at 8:52 am (utc) on July 3, 2009]
|Anyone who knows enough to care enough will have no problem doing a 'find 'n' replace' |
Hopefully there will be a brave soul that will compile a list of what to replace.
|Is "defective" really the right word? |
Well, without an XHTML MIME/ Content-Type header, something with an XHTML DTD isn't really XHTML. With the ubiquitous "text/html" Content-Type header, it really is HMTL. So "defective" would be the right word.
With HMTL4 Strict you also have syntax that makes for very readable code. There really is no need to use XHTML syntax for that. As I said in my previous post, I think the XHTML syntax isn't really readable, anyway, with all the back slashes.
|Is "defective" really the right word? |
Yes. I think so. It seemed flawed from the get-go; and was badly implemented by most tools and most sites.
I don't like the short DOCTYPE with HTML 5. I think that's a bad decision. I'd much prefer something that explicitly states that it is HTML 5, or 5.01, etc.
|Is HTML 5 really a viable option for today's web projects? It seems to me that we still have quite a substantial lack of browser support. |
If you're the kind of user who updates to every beta version of every program to always stay on the cutting edge, then use HTML5 now - but be aware that the specification is not finalized. You can, however, safely use elements from HTML4. Otherwise, stick to HTML 4.01 if you are a conservative type ;) (or XHTML 1.0 if you must).
|I'm using <menu> instead of <ul> in menus, which is valid in HTML5, but deprecated in HTML4. It works fine in all browsers, as it was part of HTML3. |
This is a good idea, why
menu was dropped in HTML4 in the first place was a mystery.
|I don't like the short DOCTYPE with HTML 5. I think that's a bad decision. I'd much prefer something that explicitly states that it is HTML 5, or 5.01, etc. |
I, on the other hand, like the empty doctype. It reflects the reality that browsers really don't do much with DTD's. Browsers don't judge syntax, they figure out what it is you want to display.
|It seems to me that we still have quite a substantial lack of browser support. |
And what always seems to happen?
By the time the most used browser supports it, there is something new to support. Which then leads to a substantial lack of browser support for the new iteration. But again the most used browser comes around, but wait, then there is something newer still..... repeat and dabble insanity.
I am happy for choice in the browser market and yet it is the bane of my existence.
Side note, I really like the audio and video tags for HTML5.
|Hopefully there will be a brave soul that will compile a list of what to replace. |
HTML5 allows XHTML syntax on empty elements in HTML documents: <br> and <br /> are both allowed.
So you'll (generally) be able to switch your existing XHTML1 pages to HTML5 pages quite easily - should you wish to. Just change the DTD and remove the xmlns attribute.
|The actual number of sites using "true" XHTML (with an XML mime type) is virtually zero. |
encyclo, time to start checking the mime on sites because there are actually a few that do, including my own for several years now. I've seen people blow entire days because of missing quotes which would have stuck out like a sore thumb on a broken page with an error message, application/xhtml+xml is the way to go though it's the vast majority of people who don't understand just what XHTML is capable of.
I personally have no strong feelings for either XHTML 2 or HTML5. In fact XHTML 1.1 is beautifully usably-minimalistic standard. HTML5's doctype is a forward compatibility disaster as not claiming a version number automatically proclaims HTML5 as all HTML versions. Whether people agree or not it is a massive mistake even if you think right now all it's good for is triggering standards or quirks mode.
I haven't checked of late but are they still making huge mistakes like allowing the href attribute on all elements? I see horridly ignorant questions and demands from people who clearly don't understand existing standards on the WHATWG forums. XHTML 1.1 is the only way to go for current, backwards, and forwards compatibility.
Saw some online examples of HTML5 the other day. Some really cool stuff.
|not claiming a version number automatically proclaims HTML5 as all HTML versions. |
Browsers use one "HTML" parser for all HTML versions, and HTML5 aims to specify how this "HTML" parser should work.
|encyclo, time to start checking the mime on sites because there are actually a few that do, including my own for several years now. |
Do you know of any of such sites that actually eXtend the functionality of HTML?
One of the big things is that xhtml is xml, and that means you could use (as in you have the option to use, even if you never did so far) xml parser and other tools on it to e.g. edit, serach and replace etc. your source globally beyond the reach and logic of a globa search and replace and/or beyond the reach of SSI and the like.
The other is the far more strict validation without those implied closures that html 4 allows -even in strict mode- to mess with your head.
That the browser parses it as if it were html is a very minor one IMHO.
I'm mainly interested if there's a way to validate xhtml5 in a very strict manner requiring all the tags to be closed and to be well formed xml (like it can be done with xhtml, till I find that: xhtml it is for me).