みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

HTMLとXHTML、どちらを使うべきでしょうか?

 掲示板やブログを自作してみたくて、PHPを勉強しています。

 その中でやはりHTMLやCSSを知らないと話にもならないと気づいて、その二つの勉強も始めました。

 HTMLの基礎を終え、ようやくCSSに取りかかってる最中なんですが、最近、XHTMLというものがあると知りました。

 複雑化したHTMLをすっきりさせるために、XHTMLが作られたそうですね。

 このどちらを使うべきなのかに迷っております。

 XHTMLはそんなに普及してないと聞いたのですが、ワシが確認したところ、結構使われてるところがあるようで、なんとあまり技術があるとは思えない職場の社内向けサイトにすら使われていました。
 何より、このOKWaveもXHTMLですよね。

 ワシは今、seesaaブログを借りているのですが、ここのブログもXHTML。

 やはり、今から覚えて使うなら、XHTMLにした方が良いのでしょうか?

 なんでもXHTMLがあまりパッとしないから、代わりにHTMLのバージョン5が作られたという話も聞きました。
 だとしたら、このままHTMLを使っても構わない?

 XHTMLは簡素化されてるので速度も速くなるという話ですが、あのGoogleはHTMLで書かれてるように見えます。
 最先端を行くと言われてるGoogleが使ってるなら、やはりHTML?

 いったい、どっちを使えば良いのでしょうか?

投稿日時 - 2014-07-23 22:46:20

QNo.8690010

すぐに回答ほしいです

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

>その中でやはりHTMLやCSSを知らないと話にもならないと気づいて、その二つの勉強も始めました。
 確かに。
>HTMLの基礎を終え、ようやくCSSに取りかかってる最中なんですが、最近、XHTMLというものがあると知りました。
 相当、その情報は遅れている。
 HTMLの基礎ということは、1999年(15年前)のHTML4.01はマスターされていると思いますが、その時点でW3Cは、HTMLは4.01で一応完結して、今後はXHTMLに移行すると宣言していました。HTML4.01をXML構文で書き直したものが、2000年勧告のXHTML1.0、HTML4.1と同様にstrict,transitinal,framesetがありました。transitinal,framesetは廃止予告だけでこの時点ではあります。
 2001年5月31日には、XHTML1.1が勧告になっています。(transitinal,framesetはない)

 ・・・もうHTMLはオシマイで、今後はXHTMLになると信じられていた時代(十数年前)・・・・

 その後状況は一変します。
 ⇒HTML5が持つ本当の意味 - @IT( http://www.atmarkit.co.jp/news/200801/25/html.html )
 ここだけは読んでおくこと。

 私は10年位前に、HTML4.01strictに統一し、そのご一時期5,6年前ですが、XHTML1.1にしていたときもありますが、現在はHTML4.01strictに戻しています。HTML5は、後方互換と、videoなど、まだ必要ないかと・・

 HTMLをマスターされているとのことですが、一応書くと、HTML4.01【ただしstrict!!】はとても良く出来た仕様で基本的なものは、XHTML1.1、HTML5もまったく変更ありません。
 すなわち
・構造とプレゼンテーションの分離( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/intro/intro.html#h-2.4.1 )
 例えば、「DIV要素とSPAN要素は、id属性及び class属性と併用することで、文書に構造を付加するため( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/global.html#h-7.5.4 )」とか、「テキストを画像に置き換えて表現する。」「余白制御のために画像を用いる。」「ページレイアウトの目的で表を用いる。」などは否定されています。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/present/styles.html#h-14.1 )

 HTML4.01では、<div class="header"><div class="section">のように、divとclassを使って示していた文書構造が、HTML5ではheaderやsectionのように文書構造を示す新しい要素で示します。( http://standards.mitsue.co.jp/resources/w3c/TR/html5-diff/#new-elements )
 DIVは原則使わなくなります。
★Note:Authors are strongly encouraged to view the div element as an element of last resort, for when no other element is suitable.( http://www.w3.org/TR/html5/grouping-content.html#the-div-element )
 HTML4.01でも、DIVは文書構造を示すために使われてきた。【はず!!】

 私は、HTML4.01strictであろうと、HTML5であろうと、XML構文に可能な限り合わせています。
・要素名、属性名は小文字
・属性値は""で括る。
・終了タグが不要な要素も書けるものは書く
 <p>段落・・・・</p><!-- HTMLではなくても良い -->
 <li>リスト項目・・・</li><!-- HTMLではなくても良い -->
 内容のない要素は、XML構文のときは />、HTMLのときは>

 他のアプリケーションとの連携が必要なときのみXML、すなわちXHTMLで書いています。
 それ以外は、HTML5を参考にHTML4.01strictですね。
 
 

投稿日時 - 2014-07-24 08:54:32

お礼

 ご回答ありがとうございます。

 最初のURL以外は難しくて半分以上理解できていませんが、特別、XHTMLにしなくてはいけない理由はなさそうですね。

 小文字や閉じタグを省略しないというのは、今参考にしてるサイトで基本になってるので違和感無いです。
 XHTMLとの違いを調べた時に、DOCTYPEの宣言の所以外は、今やってることとそんなに違いはないなという印象でした。


 このOKWaveというサイトはXHTMLで作られているようですが、どうしてなんでしょうね?
 サイトができた当時はXHTMLを使った方が良いとされていて、特にHTMLに戻す必要もないからそのままってことでしょうか。

投稿日時 - 2014-07-24 15:29:39

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(6)

ANo.6

No.3です。
 HTML/XHTMLを利用するブラウザに求められているのは後方互換だからです。

> このOKWaveというサイトはXHTMLで作られているようですが、どうしてなんでしょうね?
> サイトができた当時はXHTMLを使った方が良いとされていて、特にHTMLに戻す必要もないからそのままってことでしょうか。

HTML4.01のときも
【引用】____________ここから
HTMLユーザエージェント
 ・・・【中略】・・・
 HTML 4仕様に適合するユーザエージェントとは、この仕様の必須事項と下記の3点とを遵守するもののことを指す。
 ・・・・【中略】・・・
 ・過去との互換性のため、HTML 4 を解釈するツールについては、HTML 3.2 ([HTML32]参照)並びにHTML 2.0 ([RFC1866]参照)をもサポートすることを推奨する。
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Conformance: requirements and recommendations (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/conform.html#h-4.1 )]より
「どのバージョンのHTMLも、コンテンツプロバイダの投資が無駄にならないよう、また短期間で文書が読み取り不能となったりすることがないよう、産業界の幅広い賛同を反映するようにされてきた。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/intro/intro.html#h-2.2.1 )」
 
 XHTMLの最大の利点は、機械処理が楽だと言う事です。データベースから動的にページを作成するokWebなどのシステムとの親和性は良いでしょう。
 XHTMLはなくなるわけではなく、HTML5は、XML--XHTMLとして記述することも出来ます。XHTML5と呼ばれます。
 ⇒Polyglot マークアップ: HTML 互換の XHTML 文書( http://standards.mitsue.co.jp/resources/w3c/TR/html-polyglot/ )

★ HTML5はあまりに膨大で、難しすぎる。
 まず、非常に良い邦訳であるHTML 4.01 仕様書邦訳( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/cover.html )を読んでおくこと。何かあれば、どこかに書いてあったと思い起こせる程度には・・
★ CSSも同様で、
 CSS 2.1仕様(日本語訳)( http://momdo.s35.xrea.com/web-html-test/spec/CSS21/cover.html )
 をまず読んでおきましょう。

投稿日時 - 2014-07-24 16:36:53

お礼

 ご回答ありがとうございます。
 すみません。よく分かりませんでした(^_^;
 ちょっとその仕様書は初心者には難しすぎますね。

投稿日時 - 2014-07-30 15:45:41

ANo.5

> 今からHTML5で書いて各ブラウザとかはサポートしてるんでしょうか?
> まだ新しすぎるとも聞いたんですが…。

HTML5の新要素は一部ブラウザでは実装されていない場合がありますが、基本的な要素はサポートされています。
(IEの6,7,8あたりが一部怪しい実装ですね)

投稿日時 - 2014-07-24 16:08:52

お礼

 ご回答ありがとうございます。
 基礎的なもので書けば良さそうですね。

投稿日時 - 2014-07-30 15:44:09

ANo.4

期待されて登場したXHTMLですが、開発がすでに終了した規格です。

後継はHTML5なので、これから勉強するならHTML5でしょう。

投稿日時 - 2014-07-24 14:26:30

お礼

 ご回答ありがとうございます。

 このOKWAveも含めて、XHTMLを使ってるところをチラホラ見かけるので、すでに開発が終わったものだとは知りませんでした。

 やはり、HTML5でしょうか。

 ただ、ちょっとタイミングが難しいですね。
 今からHTML5で書いて各ブラウザとかはサポートしてるんでしょうか?
 まだ新しすぎるとも聞いたんですが…。

投稿日時 - 2014-07-24 15:33:01

ANo.2

http://standards.mitsue.co.jp/resources/mm_comic/

投稿日時 - 2014-07-24 02:23:04

お礼

 ご回答ありがとうございました。

投稿日時 - 2014-07-24 15:13:21

(≧▽≦)ノ【HTML】

投稿日時 - 2014-07-23 23:51:44

お礼

 ご回答ありがとうございました。

投稿日時 - 2014-07-24 15:13:13

あなたにオススメの質問