MTのテンプレートを整形中

MovableTypeのテンプレートをxhtml 1.0 Transitionalに準拠するかたちで整形中だ。
その中で、最初の最初の?xml version="1.0" encoding=〜から始まる宣言文
これを挿入すると、phpでまともに動かない?
http://karina.vivian.jp/archives/mt/movabletypexml.php


いや、動くらしいのだが、IE6での表示がくずれるらしい。
ここ参照。

xml宣言」を入れていると、IE6.0での表示が「互換モード」になってしまい、レイアウトが大崩れ(特にフォントが特大になってしまうこと、ブロックレベルのセンタリングが効かなくなってしまうこと)で最悪の状態です。

いくら「見た目は二の次」と言っても、やはりIE6.0でのレイアウト表示を犠牲にするわけにはいきません。(でも、IE5.5以下とNN4.x以下ではきっと大崩れですが…)。

http://karen.yim-i.net/archives/2005/07/not_declare_xml.php

xml宣言を入れたいところだが、これは止めた方がいいかな。

これは結局、IEが「互換モード」になっているからで、IE6.0に関しては「標準モード」になっていればきちんとセンタリングされるらしいです。で、その「標準モード」と「互換モード」の切り替えがどこでされるかというと、一行目から始まる「DOCTYPE宣言」なんですって。

それで、XHTMLの場合ですが、なんと一行目に「xml宣言」が入っていると「互換モード」になってしまうらしいです…。入ってなければ「標準モード」。
http://karen.yim-i.net/archives/2005/07/hate_ie.php

てなわけだ。行頭のxml宣言は入れないほうが無難か。