<!DOCTYPE HTML..〜>なんのためにする?

[上に] [前に] [次に]
トベ 2000/01/02(日) 01:26:46
HTMLのバージョンを定義する、DOC宣言されていないHp多数ありますが
、この記述を加えると、なにか良いことがあるのでしょうか?
また、フレームの定義(Frameset//EN)が定義されていない
フレームHpでも問題なく閲覧できますが、(NN4,IE4使用)
参考書読んでも、全然理解できないので、どなたか、お願いですから、
分かりやすく教えれくださいませ。
よろしくお願い申し上げます。

YUFU [E-Mail] [HomePage] 2000/01/02(日) 01:59:37
私が知っている限りでは、現在の WWW Browser は DOCTYPE を
判別しません。従って記述しなくとも実用上は問題ありません。
ただし、文法上は記述しなくてはなりませんが……。

まぁ、気になったら付ける、気にならなかったら無視しても
かまわないでしょう。

moci 2000/01/02(日) 17:50:20
HTMLの書き手はしかるべきDOCTYPE宣言をつけなければなりません。
WWWブラウザは見る人の利便を第一としますので、DOCTYPE宣言が
なかったり、誤ったDOCTYPE宣言が付いていたりしても、可能な限り
表示しようとします。たとえばMSIEでは</TABLE>が欠けていても
テーブルを表示しようとしますが、だからといって</TABLE>が
省略可能ではないのと似たようなものです。自分の知っている
WWWブラウザでどうなるかを判断の基準にしてしまうと、
MSIEしか知らない人は</TABLE>を省略するかもしれませんし。

あんでー 2000/01/03(月) 01:04:56
>Moci 2000/01/02(日) 17:50:20
> HTMLの書き手はしかるべきDOCTYPE宣言をつけなければなりません。
> WWWブラウザは見る人の利便を第一としますので、DOCTYPE宣言が
> なかったり、誤ったDOCTYPE宣言が付いていたりしても、可能な限り
> 表示しようとします。たとえばMSIEでは</TABLE>が欠けていても
> テーブルを表示しようとしますが、だからといって</TABLE>が
> 省略可能ではないのと似たようなものです。自分の知っている
> WWWブラウザでどうなるかを判断の基準にしてしまうと、
> MSIEしか知らない人は</TABLE>を省略するかもしれませんし。

この例えは適切でない。どう考えても DOCTYPE宣言はいらないからだ。
この例えは なにかお役所的なにおいすらする。リアリティゼロ。

宣言しようにも書き手が諸手をあげて納得する仕様がどこにも存在しないからだ。DOCTYPE判別できるまともなブラウザがどこにも存在しないからだ。

<table>はブラウザが認識するタグだ。DOCTYPEとはちゃうで。

日本中の路上駐車3、4分の車を一台残らず検挙しないからといって警察にリアリティがないとは言えない。
↑これはまったくたとえでなく、ただの思考のクッションである。ふふ。

moci 2000/01/03(月) 02:31:48
> >Moci 2000/01/02(日) 17:50:20

自分は"moci"ですので、よろしく。無思慮な全文引用はやめてください。

> この例えは適切でない。どう考えても DOCTYPE宣言はいらないからだ。

例えが不適切かどうかは、DOCTYPE宣言を書くべきという主張に対して
何の攻撃にもなっていません。本論をついてください。

> この例えは なにかお役所的なにおいすらする。リアリティゼロ。

例えがお役所的というのは意味不明ですが、仕様というものが
お役所的なのはその通りです。抽象的ですが、不満があれば
変更を提案して、認められ、新たに仕様とするといった手続きを
踏む必要がある点では、まさしくお役所的です。

> 宣言しようにも書き手が諸手をあげて納得する仕様がどこにも存在しないからだ。

もろ手をあげて納得するという奇態を演じる必要はありません。
我慢できる仕様に従えばいいだけのことです。いずれの仕様にも
我慢できなければ、仕様の策定に参加なさるとよいでしょう。
極論すれば、それも嫌ならHTMLを書かなければいいのです。

> DOCTYPE判別できるまともなブラウザがどこにも存在しないからだ。

「DOCTYPE判別できるまともなブラウザ」とはいったいなんですか?
DOCTYPE宣言を使わないページが多過ぎるから、WWWブラウザで
HTMLバージョンの判別に利用できないでいるというのであれば、
わたしの想定と同じことです。だからDOCTYPE宣言は書きましょう。

> <table>はブラウザが認識するタグだ。DOCTYPEとはちゃうで。

どこからTABLEの開始タグの話が出てきたのでしょう。
タグとDOCTYPE宣言が違うのはその通りですが、何か関係がありますか?
「ブラウザが認識する」というのも意味不明です。あんでーさんは
DOCTYPE宣言をいったい何だと思ってらっしゃるのでしょうか。
そしてトベさんの質問にどう答えておられるつもりなのでしょうか。

「DOCTYPE宣言をもとにHTMLのバージョンを判別するWWWブラウザが
現状存在しないので、DOCTYPE宣言は不要である」と言いたいのなら、
YUFUさんが既に、もっと分かりやすい文章で書き込んでおられます。

最後の2行はまったく意味が分かりません。単なる撹乱なら迷惑です。

トベ 2000/01/03(月) 04:09:25
皆様へ、こんなに反響があるとは、驚きました。
ありがとうございます。感謝申し上げます。
いろいろな考え方があることが分かりました。
YUFU さんの>実用上は問題ありません。
私もそう考えておりましたが、文法上必要との、ご指摘がありますが、実は、わたくしの今回の疑問もそこなのです。
たとえば、1行目にDOCTYPE宣言の記述を加えたメモ帳を、ウィンドウズ付属のフロントページで開くと、なぜか自動的に消去されてしまいます。その理由がよく理解できないのです。
フロントページエクスプレスが、DOCTYPE宣言を記述しないのは、
文法上も不必要だからなのでしょうか?
それとも、自分の操作に問題があるのでしょうか?
みなさま、お助けくださいませ。



  

Aurai [E-Mail] 2000/01/03(月) 04:38:01
> フロントページエクスプレスが、DOCTYPE宣言を記述しないのは、
> 文法上も不必要だからなのでしょうか?
フロントページはDOCTYPE宣言を付けられるほどフォーマルな文章は出力できないとのことなのかもしれません
間違った宣言をするくらいなら宣言を付けない方がずっと良いですから
若しくは、フロントページのマネージャーはDOCTYPE宣言をHTML文章を作成する上で必要のないものと判断したのかもしれません

> それとも、自分の操作に問題があるのでしょうか?
真面目なHTML文章を書こうというのならフロントページを使おうということ自体が間違いなのかもしれません

shin' 2000/01/03(月) 11:18:11
>フロントページエクスプレスが、DOCTYPE宣言を記述しないのは、

FrontPageでもNetscape Composerでもなんでもそうだと思いますが、
ふつう、手書きのHTMLは自分なりに解釈して、HTMLを書き直していると
思います。FrontPageにはDOCTYPEを吐き出すようにHTMLを書き直すように
なってないんでしょう。
ちなみにNetscape ComposerはHTML4.0のDOCTYPEを書いてくれます。

>それとも、自分の操作に問題があるのでしょうか?

操作には問題ないと思います。FrontPage側の問題だと思います。

DOCTYPEが要るか要らないかの議論ですが、
IEとNetscapeがほとんどのブラウザを占めている状況から考えて、
要るか要らないかは僕もあいまいです。
ただ、Webページデザイナ(または開発者)は、
少なくともブラウザ依存しないHTMLを書くことが必要だと思います。
そういったことから、いかなる環境でも表示するために、
DOCTYPEは必要なんじゃないかなと考えています。

有名ですが、
http://openlab.ring.gr.jp/k16/htmllint/htmllint.html

で一度HTMLをチェックしてもらうのもいいかもしれません。
DOCTYPEをつける意味はこれで高得点を取るために必要、と考えたら、
自動的に利用者にとってしかるべきHTMLになると思います。

とべ 2000/01/03(月) 23:39:43
[[解決]]
みなさまへ、ご回答頂まして、
ありがとうございました。
本年もよろしくお願いもうしあげます。

賀正 2000/01/03(月) 23:40:13
>少なくともブラウザ依存しないHTMLを書くことが必要だと思います。
>そういったことから、いかなる環境でも表示するために、
>DOCTYPEは必要なんじゃないかなと考えています。

ブラウザ依存してるかどうかは、誰が判断すんだよ。

賀正 2000/01/03(月) 23:43:21
すいません。
必要ないんじゃないかと読み違えました。
shin'さん、ごめんなさい。

三原克大 [E-Mail] 2000/02/02(水) 00:34:34
どのブラウザも読まないと言われ続けた DOCTYPE 宣言ですが、
mozilla.org で開発中のブラウザでは読んでいるようです。
http://bugzilla.mozilla.org/show_bug.cgi?id=25522
を読むと、 DOCTYPE 4.01 Transitional を指定したときの
inner table のレンダリングはバグか仕様かを
Netscape 社員同士がけんかしているのが分かります。

[上に] [前に] [次に]