カテゴリ | |
---|---|
サマリ | IE6での見え方 |
バージョン | 1.4.2 |
投稿者 | こうすけ |
状態 | 完了 |
投稿日 | 2004-04-04 (SUN) 14:17:07 |
いつもお世話になっております。
IE6対策として、XML宣言をページの先頭にならないようにしたほうがいいということを、ある友人から聞きました。
とくに、レイアウトで、テーブルタグを使わず、CSSを使っている場合です。
このページでは、IE表示の時だけXML宣言をつけないようにしてあると思うのですが、やはりこの方法しかありませんか。
IE6 SP1でも、この問題は同じでしょうか。
当方、Macユーザのため、IE6のことは解らなくて困っています。ご教授、お願い致します。
どのような条件下で問題が発生するのかはわかりませんが、xml宣言があるとページが表示できない場合が多いようです。IE6 SP1でもこのバグ(?)は同じです。付けておかない方が懸命ではないでしょうか(UTF-8の場合ではバグは起こらないようですが…そもそもUTF-8ではXML宣言は不要ですが)?
IE6対策として、XML宣言をページの先頭にならないようにしたほうがいいということを、ある友人から聞きました。
その理由は、IE6はページの先頭行がDOCTYPEでないと、IE5互換モードでレンダリングしてしまうためです。IE6の場合、XML宣言が先頭行にあると、W3C準拠モードでレンダリングされません。IE6の有名なバグです。
XML 宣言は、ドキュメントの先頭に配置しなければなりません。
You can use this declaration to switch Internet Explorer 6 and later into strict standards-compliant mode.
This declaration must occur at the beginning of the document, before the html tag.
DOCTYPEをドキュメントの先頭に置かないとW3C準拠モード(strict standards-compliant mode)にならない。上記のXML宣言もドキュメントの先頭に置かなければならない。結果、XHTMLの場合、XML宣言をすると、W3C準拠モードにならない。
詳しくお答えいただき、本当にありがとうございました。IEで見られる方のみ、XML宣言が、ページ先頭に来ないように対応したいと思います。本当にありがとうございました。