Here's a text-only article on the subject that I found at this thread.
Personally I use XHTML 1.1 and a meta tag to specify application/xhtml+xml. I have recently found that it's a waste of time without a little snippet of server side code which I now use. Without the server-side stuff I may as well have just used text/html XHTML which is pretty much the same as HTML 4.01.
So I guess what I'm saying is, if you have a server-side language available use XHTML 1.1 but if not use HTML 4.01. Here's the code for PHP:
if (stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml") ||
and for ASP:
if InStr(Request.ServerVariables("HTTP_ACCEPT"), "application/xhtml+xml") > 0 then
Response.ContentType = "application/xhtml+xml"
Response.ContentType = "text/html"
In both cases the code must go at the very start of the document, b before any code has been sent to the browser (even if it's just a line break).