この記事は2008年8月12日に書かれたものです。既に内容が古い可能性があります。

レイアウト崩れ:文書型定義(DTD)

CSS指定によるレイアウト崩れの原因についてのチェック項目です。(標準準拠モードで表示)

どの文書型定義(DTD)に従って記述しているかを明確にします。以下はDTDとレタリングモードの一覧です。

DOCTYPE宣言とブラウザレタリングモード表
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>
IE7 IE6 Firefox Opera Safari MacIE5
互換モード 互換モード 互換モード 互換モード 互換モード 互換モード
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”
“http://www.w3.org/TR/html4/loose.dtd”>
IE7 IE6 Firefox Opera Safari MacIE5
標準準拠 標準準拠 標準準拠 標準準拠 標準準拠 標準準拠
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Strict //EN”>
IE7 IE6 Firefox Opera Safari MacIE5
標準準拠 標準準拠 標準準拠 標準準拠 標準準拠 互換モード
<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Strict //EN”
“http://www.w3.org/TR/html4/strict.dtd”>
IE7 IE6 Firefox Opera Safari MacIE5
標準準拠 標準準拠 標準準拠 標準準拠 標準準拠 標準準拠
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
IE7 IE6 Firefox Opera Safari MacIE5
標準準拠 標準準拠 標準準拠 標準準拠 標準準拠 標準準拠
<?xml version="1.0" encoding="文字コード"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
IE7 IE6 Firefox Opera Safari MacIE5
標準準拠 互換モード 標準準拠 標準準拠 標準準拠 標準準拠
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
IE7 IE6 Firefox Opera Safari MacIE5
標準準拠 標準準拠 標準準拠 標準準拠 標準準拠 標準準拠
<?xml version="1.0" encoding="文字コード"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
IE7 IE6 Firefox Opera Safari MacIE5
標準準拠 互換モード 標準準拠 標準準拠 標準準拠 標準準拠
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.1//EN”
“http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd”>
IE7 IE6 Firefox Opera Safari MacIE5
標準準拠 標準準拠 標準準拠 標準準拠 標準準拠 標準準拠
<?xml version="1.0" encoding="文字コード"?>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.1//EN”
“http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd”>
IE7 IE6 Firefox Opera Safari MacIE5
標準準拠 互換モード 標準準拠 標準準拠 標準準拠 標準準拠

XML宣言について

上記レタリングモード一覧にもあるように、IE6ではXMLを宣言すると強制的に互換モード表示になります。CSS側での対応も可能ですが、現状ではXMLを宣言しない方が(記述しない)望ましいです。

タグ: , ,