Du hast da was falsch verstanden:
Das XHTML kann zwar gültig sein, doch es muss noch lange kein Sinn ergeben und von modernen Browsern "richtig" dargestellt werden.
Das der IE es "richtig" anzeigt ist mehr oder weniger dem Fakt zu verdanken, dass du den Brei so hingebastelt hast, das IE den mit seiner Fehlerhaften Rendering-Engine "richtig" darstellt.