I was a little bored, so I brought my blog up to XHTML 1.0 Strict compliance (as far as possible) and redesigned the site completely using a new template. The only parts of my blog that are now non standards-compliant are comments that users enter, where they are allowed to enter malformed XHTML (like capital letters for HTML tags), and also certain bits of code that are generated by the Blogger engine, over which I have no control. Hopefully now my blog will render better in browsers like Opera, where it was rendering poorly before.
You may be wondering why I chose XHTML 1.0 instead of HTML 4.01. Blogger made the choice very easy for me. Almost all of the code it generates is XHTML style code (like <img src=”foo” />), which is inconsistent with HTML (which uses <img src=”foo”>). So I chose XHTML 1.0 by default.
Ordinarily for XHTML 1.0 pages, I’d have an opening statement of <?xml version=”1.0″ encoding=”UTF-8″?>, but since this throws Internet Explorer into Quirks Mode, and causes terrible rendering, I forced not to do this.
Hopefully this will also fix the issue that a lot of people were having with the pageload stalling halfway and displaying garbage.