You seem to have gotten rid of the validation errors at the moment as
a result of comments by others. However click your link to the W3C
validator above , check the verbose output box, and revalidate. Then
look at Content-Type which you will find is text/html. This means that
even if your code is perfect xhtml, it is only being served as html,
so you might as well just write the code as html 4.01 strict in the
first place. To serve as true xhtml, you would need to associate some
extension such as .xhtml with the mime type application/xhtml+xml for
xhtml. The extension .html already is used for the mime type text/html
on most servers. If you do this, one very important thing happens. The
xhtml page is parsed as xml which is extremely strict and in case of
errors often will give an error message rather than a view of the
page. But serving the page as html uses the loose-as-a-goose html
parser which often will show the page, perhaps not as intended, when
there are even many errors. If you were to associate an extension such
as .xhtml with the mime type application/xhtml+xml on your server, you
could then serve true xhtml once any errors are corrected. This will
work on most recent browser as they will handle true xhtml. However
you will find that no version of an IE browser, at least through IE 7,
can view a true xhtml page served properly. You must use some rather
complex code on the server to rewrite the true xhml page as an html
page if you want IE to view it - there are other techniques. At least
header exchange between the server and browser can tell you that an IE
browser is not capable of xhtml.
However you are in good/bad company as likely over 99% of pages
claiming to be xhtml are not served properly. Now as a final example,
click on your link to the W3C validator, substitutehttp://
www.microsoft.com
for the url of your page, check Verboise Output and click Revalidate.
You will find that the home page for Microsoft is claiming to be
xhtml, but it is only being served as html. If it were being served as
true xhtml with the proper mime type application/xhtml+xml, it could
not be seen on IE browsers! Moreover, I doubt if the xml parser would
allow the page to be seen on any browser because of the many
validation errors on the Microsoft home page!