プロが教えるわが家の防犯対策術!

xthml1.0を勉強したのですが、htmlの勉強を進める場合
xhtml5よりか、html5にしたほうがいいと聞いたことがあるのですがなぜなのでしょうか?

XHTML1.0とHTML4の関係が、HTML5とXHTML5の関係と同じ関係で
HTML5を厳格にしたのがXHTML5かと思ったのですがそうではないのでしょうか?

XHTML5ではだめでhtml5を覚えないといけないというのは、現場の人たちはXHTML5は厳格すぎてコストがかかるので自由度の高いhtml5を採用するからと言うことなのでしょうか?

A 回答 (4件)

 略号、頭文字ですから、必ず大文字で書きましょう。



 いまさら、XHTML1.0 はないでしょう。(^^)HTML1.0はXHTML4.01をXMLに適合するように整理したもので、本質的にHTML4.01と変わりません。
 15年前の1999年のHTML4.01の勧告以来・・『HTML文書を作る場合には、この仕様における、他のDTDセットではなく strict DTD に適合する文書を作るよう推奨する。( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )』とされていまして、transitinalやframesetは将来的に廃止されると予告されてきた。
 学ぶならXHTML1.1またはXHTML2.0でしょうが、XHTML2.0は御存知のように中断です。

 このあたりの流れは、
・HTML5が持つ本当の意味 - @IT( http://www.atmarkit.co.jp/news/200801/25/html.html )
・HTML5“とか”アプリ開発入門(1):Webの3つの問題を解決する「HTML5」とは何なのか (1/2) - @IT( http://www.atmarkit.co.jp/ait/articles/1008/30/n … )
 をじっくり読まれると良いでしょう。

>xhtml5よりか、html5にしたほうがいいと聞いたことがあるのですがなぜなのでしょうか?
 HTML5ではXML流儀で記述する方法も用意されています。Polyglot マークアップ: HTML 互換の XHTML 文書( http://standards.mitsue.co.jp/resources/w3c/TR/h … )
 単にXML文法で記述するとそれはXHTML5になります。

 XMLのよいところは、文書が整形されていますから、他のアプリケーションとの整合性が極めて高いということです。その必要がなければ、文法に緩やかなHTMLでよいという意味です。

>XHTML1.0とHTML4の関係が、HTML5とXHTML5の関係と同じ関係で
 HTML4.01 -- (XML化)--> XHTML1.0
>HTML5を厳格にしたのがXHTML5かと思ったのですがそうではないのでしょうか?
 HTML5には、XMLに準拠した書き方もある。
  だいぶ意味が違います。

>現場の人たちはXHTML5は厳格すぎてコストがかかるので自由度の高いhtml5を採用するからと言うことなのでしょうか?
 いえ、HTML5で記述するときも文法的にはXML的に記述するほうが楽でしょう。すなわち
・終了タグは必ず記述する。
・要素名、属性名は小文字
・属性値は""で囲む。
 これは守ったほうがHTMLで記述するのも楽です。
 XHTMLの記述をするのは他のアプリケーションから出力されることが多いため、XHTML方式のほうが楽ですし、コストも低い。整形されていますから、機械的な処理がずっと楽になります。
 製作コストに差はないでしょう。

 HTML5は勧告目前とはいえまだまだ未確定の部分があります。非対応ブラウザは少なくなったとはいえ無視できない状況がしばらく続くでしょう。
 その間に
★HTML4.01 ただしstrictを徹底的に身につけておくこと。
 特に、「構造とプレゼンテーションの分離( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )」に関わる部分は徹底的に身につけておくこと。HTML5ではプレゼンテーションを指定する要素はなくなります。
 むやみやたらと<DIV>は使えなくなります。
 
  
    • good
    • 0
この回答へのお礼

ありがとうございます。


いえ、HTML5で記述するときも文法的にはXML的に記述するほうが楽でしょう。すなわち
・終了タグは必ず記述する。
・要素名、属性名は小文字
・属性値は""で囲む。
 これは守ったほうがHTMLで記述するのも楽です

上記の記述方法がXTHML5の記述方法というわけではないのですか?
上記はドックタイプはHTML5で実際の記述ルールをXTTML5にしているということではないのでしょうか?

>HTML5には、XMLに準拠した書き方もある。
HTML4を、XMLに準拠した書き方がxhtml1.0であり、
HTML5を、XMLに準拠した書き方ががXHTML5のことなのではないのでしょうか?

お礼日時:2014/09/01 15:12

No.3です。


ごめん。質問の意味を取り違えた。
スルーしてください。
    • good
    • 0

単に時代の流れです。


html4でテーブルレイアウトする時代から、xhtml+cssに遷移し、html5+css3の時代になったというだけです。
なんでもそうですが、基本的に新しい規格の方が優れています。後発なのですから当たり前です。
で、主要ブラウザの最新バージョンがhtml5に対応して、古いブラウザを利用するユーザーが消えゆく中、新しい機能を使わない手はありません。厳密に言えば、ブラウザは賢いので、xhtml内でもhtml5の機能は使えるのですが、文法的には誤りです。

質問者さんが厳格なxhtml文書を書いているとしたら、当然、html5の機能は使えません。
逆に質問ですが、ほとんどのブラウザでhtml5の機能が使えるのに、わざわざそれを使えない規格を選択する理由はなんでしょうか?
もし、質問者さんの先に制作依頼者がいるとしたら、xhtmlしか使えないという時点で不利を与えていると思いませんか?
    • good
    • 0

>上記の記述方法がXTHML5の記述方法というわけではないのですか?


>上記はドックタイプはHTML5で実際の記述ルールをXTTML5にしているということではないのでしょうか?
 いいえ、内容のない要素はXHTMLは />ですが、HTML5では>でよい。(/>も許される。)
 Polyglot マークアップ: HTML 互換の XHTML 文書( http://standards.mitsue.co.jp/resources/w3c/TR/h … )をお読み下さい。

>HTML5には、XMLに準拠した書き方もある。
>HTML4を、XMLに準拠した書き方がxhtml1.0であり、
 これは正しい。HTML4.01ですが・・・

>HTML5を、XMLに準拠した書き方ががXHTML5のことなのではないのでしょうか?
 XHTML5はHTML5に含まれます。
1.6 HTML vs XHTML( http://www.w3.org/TR/html5/introduction.html#htm … )

 The first such concrete syntax is the HTML syntax.
・・・【中略】・・・
 The second concrete syntax is the XHTML syntax, which is an application of XML.
・・・【中略】・・・
 The DOM, the HTML syntax, and the XHTML syntax cannot all represent the same content. For example, namespaces cannot be represented using the HTML syntax, but they are supported in the DOM and in the XHTML syntax. Similarly, documents that use the noscript feature can be represented using the HTML syntax, but cannot be represented with the DOM or in the XHTML syntax. Comments that contain the string "-->" can only be represented in the DOM, not in the HTML and XHTML syntaxes.

 もしXHTMLが面倒なら、XHTML1.0を学ぶ必要はありません。

・終了タグは必ず記述する。
・要素名、属性名は小文字
・属性値は""で囲む。
 はHTMLをテキストエディタで書かれるときは、要素ごとにインデントして書かれると思いますが、それが分かりやすいこと。スタイルシートで属性セレクタを使用する時に必要だからと言う実務的な理由です。
    • good
    • 0
この回答へのお礼

ドックタイプ宣言をHTML5にして、・終了タグは必ず記述する。
・要素名、属性名は小文字
・属性値は""で囲む。

をXTML5のようにしっかり行えばよいという事ですね。

お礼日時:2014/09/01 17:21

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!