質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.36%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

XHTML

XHTMLは、eXtensible HyperText Markup Languageの略であり、SGMLベースであるHTMLとは違って、有効なXMLドキュメントにもなるHTMLアプリケーションです。XMLベースのツールを用いて生成されるHTMLページのためによく使われるマークアップ言語です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

3回答

3532閲覧

XHTML,HTML4,HTML5の違いについて

amaotosarasa

総合スコア14

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

XHTML

XHTMLは、eXtensible HyperText Markup Languageの略であり、SGMLベースであるHTMLとは違って、有効なXMLドキュメントにもなるHTMLアプリケーションです。XMLベースのツールを用いて生成されるHTMLページのためによく使われるマークアップ言語です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

2クリップ

投稿2017/05/09 14:29

これからコーダーとして働くものです、
職業訓練でhtml5は学びましたが、html4とxhtmlの事についてよくわかりません。
特にxhtmlについては調べても何の詳しく書いているところがなく、困っています。
分かる方がいれば教えて頂ければ幸いです。
よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

#TL;DR

  • HTML4はHTMLの4番目のバージョンのHTMLで、構造とデザインの分離がされた。
  • XHTMLはHTML4をXMLを基に再構築したもの。
  • HTML5はHTML4の次のバージョンのHTMLで、ウェブアプリ開発に適していて、今から使うならこれ。

#HTML4とは
HTML4は、HTMLというウェブページの構造を定義するためのマークアップ言語の4つ目のバージョンで、1997年12月18日にW3Cから仕様が発表されました。また、XHTMLはHTML4を基にして策定されました。HTML4には、以下のような特徴が挙げられ、この前のバージョンのHTMLよりもよりHTML文書らしくなったと言えると思います。

  • 表示に関係する要素や属性がCSSの影響で非推奨になる(構造とデザインの分離)。
  • 3種類のDTDがある。
  • LISTING要素, PLAINTEXT要素, XMP要素の廃止。

上で記述した3種類のDTDとは以下のもののことを指しています。
1. Strict DTD
**非推奨になった要素や属性、フレームを使用することができず、仕様を厳密に満たす必要があります。**実質的にはこれが正式なもので、ほかのDTDを宣言している場合でも、いずれStrict DTDに移行することが理想だと思います。

HTML

1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

2. Transitional DTD
HTML4が策定された当時、構造とデザインの分離を掲げ、デザインに関係する要素や属性をことごとく非推奨にしました。しかし、CSSの実装が不十分だったこともあり、CSSの実装がちゃんとした水準に達するまでは非推奨の要素や属性を使用することを認める必要がありました。その解決策として、Transitional DTDが勧告されました。これでは、非推奨の要素と属性を使用することが認められていますが、フレームは使用することができません。

HTML

1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

3. Frameset DTD
Frameset DTDでは、Transitional DTD同様非推奨の要素と属性を使用することができることに加え、フレームの使用も可能です。フレームを設定する必要のある文書の場合、このDTDを定義する必要があります。

HTML

1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

#XHTMLとは
XHTMLは、HTML4をXMLの仕様に従って定義しなおしたHTMLです。そのため、DTDもStrict DTDTransitional DTDFrameset DTDの3種類が存在します。XHTMLの利点として、XHTMLはXML文書でもあるので、他のXML文書を埋め込めることや、それまでのHTMLに比べて仕様が厳格であることなどが挙げられます。しかし、2009年07月03日にXHTMLの策定が終了し、HTML5に力を注ぐ方針になったので、これから使うならば、後述のHTML5がお勧めです。

#HTML5とは
2014年10月28日に勧告されたHTMLの5番目のバージョンで、HTML4との違いは以下のようなものが挙げられます。

  • 動画や音声をHTMLから扱えるようになった。
  • ドラッグ&ドロップやファイル操作などのAPIが新しく追加された。
  • 文書構造がより詳細に記述できるようになった。
  • CSSにより可能なことが多くなった。
  • DTDがなくなり、DTDに依存する機能の大半は使用できなくなった。

このように、HTML5は多くのデバイスに対応したウェブアプリケーションの開発に適しているので、現在多くのウェブページで使用されています。もしも新しくウェブページを作り始めるなら、HTML5で行うことをお勧めします。

投稿2017/05/09 17:14

s8_chu

総合スコア14731

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

XHTMLについてだけ補足します。

HTMLはもともとSGMLというものを基本にしていました(HTML4まで、HTML5はSGMLではありません)。HTMLをSGMLではなく、XMLで再構築したのがXHTMLです。XMLはSGMLよりも厳密な構文であるため、パーサが単純になるなど、色々利点があると考えられたから、これを推し進めようとしていました。HTML+XML=XHTMLという図式であっているのですが、実際はいくつかのバージョンがあり、それぞれ元になったHTMLが異なります。

  • XHTML 1.0: XML + HTML4.01、HTML4.01を単純にXMLにしたもの。HTML4.01と同様Strict、Transitional、Framesetの3つのDTDがあります。
  • XHTML Basic: 小さな端末向けに作られたサブセット、ガラケのブラウザなどで対応する物がありました。
  • XHTML 1.1: XHTML 1.0をStrictのみにして、モジュール化したり、ルビを足した物。
  • XHTML 2: 次期XHTMLとして制定しようとしましたが、途中で断念。
  • XHTML5: HTML5のXMLバージョン。

XHTMLは無くなったわけではありません。HTML5ではSGML風の通常の書き方(しつこいようですが、SGMLそのものではありません)の他に、XMLでの書き方も制定しており、俗称としてXHTML5と言われています。機械的な処理はXMLの方が扱いやすいため、一部ではXHTML5が使われているところもあります。ただ、人が手打ちすることがメインの場合は通常のHTML5の方が書きやすいと言うこともあり、それほど多くはありません。

なお、HTML5という名称も5を削除して、今後は単にHTMLとだけ名乗るようになるようです。また、XHTMLという言葉も正式な物ではなく、単にHTMLのXML構文となるようです。

参考: 1. Introduction - HTML Standard

投稿2017/05/09 21:55

raccy

総合スコア21737

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

XHTMLは、XMLでHTMLを定義したものです。<br />のような閉じタグとか、checked="checked"のような厳密かつ冗長な記法が必要になる割には、XML準拠のメリットもあまり大きくなかったので、HTML5ができてからは完全に廃れてしまっています。

投稿2017/05/09 14:42

maisumakun

総合スコア145952

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問