HTMLのヴァージョン

[新着] Webテンプレートを仮オープンしました



0   名前: ロビン : 2005/11/02 20:01
ここのサイトで紹介してるHTMLタグはHTMLのヴァージョン4.01ですか?
また、MSIEに該当するHTMLのヴァージョンは何ですか?


1   名前: Bill閣下 : 2005/11/02 20:01
要素型の一覧をざっと見てみました。
http://www.tagindex.com/html_tag/all_tags/index.html

・XHTML 1.1にのみ存在するRUBYなどや、
 W3Cの仕様に存在しないBGSOUNDなども扱っています。
・HTML 4.01を網羅しているわけではなく、
 紹介していないものもあります。

MSIEに該当するHTMLというのは、分からないです。

2   名前: ロビン : 2005/11/02 20:01
>HTML 4.01を網羅しているわけではなく

でもほとんどのタグがHTML 4.01ということでいいですよね?

>MSIEに該当するHTMLというのは、分からないです。

ということは別に<DOCTYPE HTML PUBLIC・・・・HTML 4.01>
の宣言はMSIEの人はしなくてもいいですよね?

文法チェッカのサイト見てちと神経質になっちゃったんですよ。

3   名前: カヅサツ : 2005/11/02 20:01  [URL
> ということは別に<DOCTYPE HTML PUBLIC・・・・HTML 4.01>
> の宣言はMSIEの人はしなくてもいいですよね?

「MSIEの人」って何ですか?

4   名前: Bill閣下 : 2005/11/02 20:01
>でもほとんどのタグがHTML 4.01ということでいいですよね?
そのあたりのことは、
鳩丸倶楽部のリファレンスを見れば詳しく分かると思いますよ。
http://bakera.jp/hatomaru.aspx/ref/html

>文法チェッカのサイト見てちと神経質になっちゃったんですよ。
Another HTML-lintを使ったんですね。多分。
FAQに書いてありました。
http://lcdev.kek.jp/htmllint/faq.html
Q
MSIE用にHTMLを書いていますが、DOCTYPEがないと言われます。どうすればいいのですか。
A
MozillaやMSIEにはHTMLの正式な文法がありません。この文法は Document Type Definition (DTD/文書型定義) と呼ばれるものです。DOCTYPEは、HTML文書がどのDTDに則って書かれているかを示すものなので、DTDの存在しないMozillaやMSIE 用のHTML文書にDOCTYPE宣言をすることはできません。HTMLをMozillaやMSIE用としてチェックさせるには、HTMLヴァージョンをそれぞれ該当するものに変更してからチェックしてください。

私はこれを読んでもいまいち理解できないのですが、MSIE用のHTMLというのは、
HTMLに似ているけどHTMLではないもの、といったところでしょうか。
DOCTYPE宣言はしないのが正解だと思います。
「HTMLをMozillaやMSIE用としてチェックさせるには、
HTMLヴァージョンをそれぞれ該当するものに変更してからチェックしてください。」
と言われても、HTMLバージョンを示すものがDTDではない何かで、
それが不明なので示すことができないですからね……。

5   名前: ピノ : 2005/11/02 20:01
>「MSIEの人」って何ですか?

ブラウザがMicrosoft Internet Explorerの人
ってことじゃないですかね。


6   名前: かっど : 2005/11/02 20:01
>ブラウザがMicrosoft Internet Explorerの人
>ってことじゃないですかね。

レンダリングエンジンがIEコンポーネントのブラウザを使用してる人という意味かも?

7   名前: Pid : 2005/11/02 20:01
基本的に HTML 文書には文書型宣言が必須です。

Another HTML-lint では,作者の方が独自に MSIE 用,Mozilla 用の DTD を作成し,それに基づいて妥当性をチェックしています。したがって,MSIE もしくは Mozilla の拡張要素・属性を使うのであれば,それらをお借りして

・<!DOCTYPE HTML [<!ELEMENT …> <!ATTLIST …>]>

のようにその場で DTD を定義すれば良いでしょう。

あるいは,DTD を必要としない XML な XHTML 文書を作って名前空間を分けるという手もあるかもしれません。

・<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ms="urn:microsoft:…">
・<div><ms:marquee>..</ms:marquee></div>

とは言え,原則として HTML パーサは「未知のタグ」「未知の属性」を無視すべきである,という長年の慣習がありますから,「無視されるだけなら構わない」という覚悟(および,それを「公開」することによって生じうるデメリットを甘受する覚悟)があるのなら,しれっと HTML 4.01 でも宣言しておけば良いんじゃないでしょうか。

まあ,そこまでして MSIE の拡張要素や属性が必要だとは思えませんが(でも,確かに HTC などを使う時には悩むかも)。

8   名前: ロビン : 2005/11/02 20:01
みなさんアドバイスありがとうございました。
鳩丸倶楽部のリファレンスとても参考に
なりました。

DOC宣言はしない方向で行こうか考えてましたが
Pidさんのような意見もあるのでもうすこし考えてみたいと思います。

一覧へ戻る