• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:サイト制作、HTML?XHTML?HTML5?)

サイト制作において、XHTML、HTML(4.01)、HTML5の選択は?

このQ&Aのポイント
  • サイト制作において、XHTML、HTML(4.01)、HTML5のどれを選ぶべきか迷っていませんか?
  • XHTMLはSEO的には有利ですが、HTML(4.01)の書籍が多い理由はなぜでしょうか?
  • また、HTML5を使うべきタイミングについても考えていきましょう。

質問者が選んだベストアンサー

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.1

 HTML4.01ですから、勧告から10年以上たっているのに、いまだにTransitionalが使われ続けているざまですから(^^)  HTML4.01も、未来永劫・・なくなるわけじゃありません。HTML2.0もHTML3.2も現役バリバリです。  HTML5は、まだまだ先の話で良いと思います。まあ、新しいものに挑戦するのも良いですが、それはその必要があったときでよいかと・・。どんな必要が??audio,video,canvasなどが必要ならと言うことでしょうか。  そうでなければ、資料の豊富なHTML4.01--ただしstrictですよ---を徹底的に学ぶべきです。いまだに <div id="wrapper">  とかじゃダメと言うこと。 <body>  <div class="article">   <div class="header">   </div>   <div class="section">    <h1>見出し</h1>    本文   </div>   <div class="footer">   </div>  </div> </body>  というふうに、きちんと文書構造にしたがってマークアップされてますか? HTML4.01の仕様書にも 【引用】____________ここから DIV要素とSPAN要素は、id属性及び class属性と併用することで、文書に構造を付加するための一般機構を提供する。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[The global structure of an HTML document (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/global.html#h-7.5.4 )]より  と、DIVやSPANは、文書構造を示すもので文書構造を示す名前を付けろと書いてある。  HTML5では明確に、 <body>  <article>   <header>   </header>   <section>    <h1>見出し</h1>    本文   </section>   <footer>   </footer>  </article> </body> となる。  HTML4.01strictをしっかり身につけたら、 HTML5 における HTML4 からの変更点 ( http://standards.mitsue.co.jp/resources/w3c/TR/html5-diff/#new-elements ) だけでHTML5はOK CSSも、CSS2.1をしっかりと身に着けましょう。 div.section div.aside{color:red;} とか、詳細度(この場合[0,0,2,2]を計算しながら、すらすらと書けるように・・・ XMLは、しばらくお預けですね。・・HTML5はXHTML5としても書ける。 他のアプリケーションで使用するなど、よほど特殊な事情があればXHTMLもよいかも。

suffre
質問者

お礼

ありがとうございます。 HTML5はさっくり読んだ程度ですが、たしかに構造を明確にするためのタグが用意されていて、そのことを一番始めに解説している書籍が多かったですね。 HTML4.01もそうすることを推奨していたのは知らず、勝手にid名やclass名を付けていました。 これから作るサイトは教えてくださったことをよく調べて、構造的に正しく作っていこうと思います。 よい情報をいただきましてありがとうございました。

その他の回答 (2)

  • Chaire
  • ベストアンサー率60% (79/130)
回答No.3

No.2 のお礼より: > iframe も JavaScript も使わず、XHTML+CSSで記述したコードを、クローラーに上から下に向かってシンプルにparseさせるのが一番に決まってます 質問からの流れからして、ここでの『一番』とは『iframe も JavaScript も使わず』です。別に XHTML だからどうこうとは言ってないと思います。 なお、iframe 要素の見解についても私は議論の余地があると思います。iframe 要素は中に代替内容を記述できます。例え埋め込み表示はできずとも、代替内容に a 要素でも書いておけば、利用者(クローラを含む)は普通にリンクをたどれるはずです。つまり、この場合に問題があるのは iframe 要素自体ではなく、ダメな iframe 要素の使い方、ということになります(むしろ、この点に全く触れられていないことに吃驚です)。 # フォーム、印刷、ブックマークなどの問題については触れません。 また、XML ならシンプルにパースできるかもしれませんが、正直なところ Web 上の XHTML ページが整形式であるとはあてにできませんので、何だかんだでエラー処理を通すことにはなります。結局、最初からエラー処理を含む HTML パーサと大して変わりません。最初から XML 界隈のデータだけを対象にするサービスなら別でしょうが。

  • Chaire
  • ベストアンサー率60% (79/130)
回答No.2

「サイト制作」ということなら、何でも良いです。なぜなら、文書がどの形式であれ、今後のブラウザは基本的に HTML5 として解釈するからです。 残念ながら、現在のウェブには「壊れた」(X)HTML 文書が多くなりすぎました。そこで、いっそのこと、文書の形式は何であれ(たとえ文法的に壊れていようとも)ブラウザの解釈の方を統一した方が良い、というのが HTML5 です。今後のブラウザは、たとえ HTML 4.0 でも、XHTML 1.0 でも 1.1 でも、もちろん HTML5 も、基本的に HTML5 のルールで解釈します。 こう書くと後ろ向きな理由の気がしますが、見方を変えれば前向きな理由でもあります。今から 10 年後のブラウザから見れば、今の HTML5 も「古い、壊れた」ものに見えるかもしれない。それでも、10 年後のブラウザはそれを「エラー」と切り捨てないで、時代に合ったルールで解釈する、ということです。 --- 「基本的に」と書いたのは、例外がひとつあるからです。No.1 でも触れられていますが、XHTML 文書が HTML5 として解釈されるのを避けたい場合、内容タイプを text/html ではなく application/xhtml+xml にして送信します。こうすれば、その XHTML 文書は HTML5 として解釈されることなく、XML としての機能をフルに使えます。 巷でよく見る「XHTML のようなもの」、つまり text/html で送信されているものは、今のブラウザでさえ XHTML として認識していません。実は、あれらは単なる HTML として処理されているのです。それなら、そういう「XHTML のようなもの」は HTML5 として解釈されても何の問題もないはずです。 XHTML には一応、XHTML 固有のスタイルシートやスクリプトの書き方がありますが、残念ながらそれらを見かけることはまずありません。ほとんどの制作者が、XHTML を HTML として扱うことに慣れてしまっているからです。 --- 理想を言えば、HTML 4.0 だろうと XHTML 1.x だろうと、目的に合った形式を選べば良い。なぜか「どれか一つに絞らねばならない」という固定観念が蔓延しているように思われますが、全く不要な心配です。 繰り返しますが、今後のブラウザは文書の形式が何であれ、基本的に HTML5 として解釈します。逆に言えば、制作者である我々は、「ブラウザでの表示」以外の目的に応じた形式を自由に選択できる、ということでもあります。 学習用に HTML 4.0 を極めるも良し、XML 処理を考慮して XHTML を選ぶも良し。ブラウザの解釈が固定されたことで、かえって我々は形式の選択の自由を得た、と言うことが、まあ、できなくはないです。 なお、「SEO に XHTML が良い」などという話は聞いたことがありません。そんなのより内容の充実が先決であるのは言うまでもないでしょう。

suffre
質問者

お礼

ありがとうございます。 そのような見方で回答をいただけるとは思っていなかったので正直驚いています。 お二方のご意見を聞いてHTML4.01でしっかり勉強しながら作っていこうと思います。 あと最後の「なお、「SEO に XHTML が良い」などという話は聞いたことがありません。」という部分ですが、こちらのリンクでの回答者の方が書いていました。 http://oshiete.goo.ne.jp/plus/q/88345 >SEO上の有利性を求めるのであれば、iframe も JavaScript も使わず、XHTML+CSSで記述したコードを、クローラーに上から下に向かってシンプルにparseさせるのが一番に決まってます。