DOCTYPE

HTMLやXHTMLのDOCTYPEの記述書式は、次のとおりだ
<!doctype html public "公開識別子" "文書型定義のURI">
htmlの場合、"文書型定義のURI"は必須ではないので、記述していないサイトも多いようだ。
実は、"文書型定義のURI"の有り無しは、HTMLの表示に影響を与える。
http://www.remus.dti.ne.jp/~a-satomi/bunsyorou/Doctype-Switch_situation.html
"文書型定義のURI"がないと、標準仕様のHTMLとして解釈されず、Quirks Modeと呼ばれる互換性を重視したモード(要するにブラウザ独自の表示をするモード)で解釈される。
なので、DOCTYPEを記述するなら、"文書型定義のURI"は入れておかないと意味がない。(なぜなら、標準仕様にしたがって書いたと宣言したつもりでも、標準仕様にしたがって解釈してくれないから)
ところが、DOCTYPEを記述してしまうと、自分では標準仕様に従ったつもりでも、うっかりして標準仕様に従わずに記述してしまった部分は、解釈されなくなってしまう。その結果がどんな風になるかは、一度試してみるとよいと思うけれど、意外に、標準仕様に準拠しているつもりでも、標準仕様にしたがっていなかったりする部分があるもので、思いがけない表示になってしまってびっくりすることがある。
ということで、DOCTYPEを記述するなら、きちんと仕様に準拠していることを確認してから記述するべきだと思うわけで、仕様に準拠できていないなら、書く必要があるのかなと、ちょっと思っているところなのです。


ちなみに、私のサイトは、"文書型定義のURI"を入れたら、表示が崩れてしまったので、いまは、DOCTYPEがないHTMLにしています・・・