I'm probably one of the biggest proponents of XHTML on this board. However, I think both sides are making very valid points here.
HTML 4.01 Strict is still a web standard, and just as acceptable to use as XHTML 1.x. In fact, it is sometimes better to use. Why?
- XHTML, when served as application/xhtml+xml, will not render if there is a single coding error, because it is being parsed as XML. This is a feature, not a bug: it helps you catch errors in your coding. However, living on a "knife edge" is not appropriate for all people or all web sites.
- XHTML, when served as text/html, is in no way better than HTML.
HTML can be just as well-formed and semantic as XHTML. Just take a look at Mark Pilgrim's site: http://www.diveintomark.org/. There is nothing that states that HTML sites cannot separate structure from presentation, control styling entirely through CSS, be accessible, etc. etc. etc. It all depends on the quality of the coder.
So then why go XHTML?
You could be one of those rarified individuals that actually needs to have their page parsed as XML. If you want to make use of other XML applications, XHTML is the way to go. XHTML interfaces with XML in ways that HTML cannot. Do you use XSLT or MathML? Then XHTML is for you. While there aren't tons of these people around now, as time progresses, more and more people are going to want/need to take advantage of true XML processing.
Or, more commonly, you might want to make a "political statement." Regardless of the fact that HTML can be just as semantic and well-formed as XHTML, when most people think of HTML, they think of early-1990's designs: inaccessible, unsemantic, full of "tag soup" code and hundreds of validation errors. XHTML stands for change: it is a way of escaping the negative legacy of HTML and pushing for a more accessible, more semantic, better future web.
I code in XHTML 1.1 for the latter reason. Some (few) people code in XHTML 1.x for the former. But many still use HTML.
And you know what?
That's just fine.
It isn't about what spec you use. It's about how you code. There are tons of XHTML pages out there that are total junk, as far as their coding goes: they are inaccessible, they don't seperate presentation from structure, they don't validate, etc.
So use XHTML if you please. Or use HTML. It honestly doesn't matter, as long as you use them properly.


