IE-friendly again

The blog misrendered something fierce on IE (at least on 5.5 and 6) for a long while.

Finally sought out the culprit today. And noted that when it comes to debugging web pages, IE does not provide much assistance. Firefox, on the other hand, especially when boosted with the likes of Web Developer extension is a far more agreeable tool.

It turned out that tnternet explorer did not like my use of identifiers, and thus failed to render any of the divisions tagged with an identifier. Which pretty much meant this whole blog.

Proper browsers (Firefox and Safari to list just two obvious choices) never had any issue with the previous definitions, and they continue to work well.

The root cause? I hear you asking, with a quavering voice.

Simple: Internet Explorer does not like identifiers that begin with an underscore (that is one of these guys: ‘_’).

According to the XHTML definition (as well as the XML definition referred to in that) this is a completely legal construct:

Names and Tokens    [4]   	NameChar   ::=   	Letter | Digit | '.' | '-' | '_' | ...   [5]   	Name	   ::=   	(Letter | '_' | ':') (NameChar)*   [6]   	Names	   ::=   	Name (#x20 Name)*   [7]   	Nmtoken	   ::=   	(NameChar)+   [8]   	Nmtokens   ::=   	Nmtoken (#x20 Nmtoken)* 

Mr. Underscore is there, in good company.

Funky.

Leave a comment