Extensible HyperText Markup Language
出典: フリー百科事典『ウィキペディア(Wikipedia)』
HTML |
Cascading Style Sheets ダイナミックHTML |
拡張子: | .xhtml、.xht、.html、.htm |
---|---|
MIME Type: | application/xhtml+xml |
開発者: | World Wide Web Consortium |
種別: | マークアップ言語 |
派生元: | XML、HTML |
国際標準: | 1.0 (Recommendation), 2.0 (Working Draft) |
Extensible HyperText Markup Language (エクステンシブル・ハイパーテキスト・マークアップ・ランゲージ、XHTML、エックスエイチティーエムエル) は、SGMLで定義されていたHTMLをXMLの文法で定義しなおしたマークアップ言語である。その仕様はHTMLと同じくW3Cによって勧告されている。
XMLを採用したため、MathMLやSVGなど他のXML文書を埋め込むことができるようになった。
なお、XHTML は eXtensible HyperText Markup Language の略であると書かれることがあるが、これは間違いである。XはExの発音を表している。
目次 |
[編集] HTMLとの相違点
XHTMLは前述のとおりXMLアプリケーションである。よって、XMLの文法に従うために、HTMLと異なる部分が存在する。以下は、主な文法上の相違点とソースのサンプルである。
<?xml version="1.0" encoding="Shift_JIS"?>
- XMLでは大文字・小文字が厳密に区別される。XHTML勧告において要素名・属性名は全て小文字でのみ定義されていることから、要素名・属性名は共にすべて小文字で書かなければならない。
正: <p id="aaa"><em>あああ</em></p> 誤: <P ID="aaa"><EM>あああ</EM></P>
- 要素は必ず開始タグと終了タグを備えていなければならない(タグ省略は許されない)。
正: <p><em>あああ</em></p> 誤: <p><em>あああ</em>
- 空要素であっても必ず終了タグを付与するか、もしくは開始タグの末尾を " />" としなければならない。
正: <em>あああ</em><br /> 誤: <em>あああ</em><br> 正: <em>あああ</em><br/>(非推奨) 正: <em>あああ</em><br></br>(非推奨) 誤: <em>あああ</em><br> </br>
XMLを解せない古いUAでは <br/> という記述に対し、"br/" を要素名とみなし無視してしまうことがある。
終了タグを付与する <br></br> という記述の場合は、タグの間に空白類文字すら含めてはいけない。また、後方互換性のために <br></br> ではなく、<br /> と記述することが推奨されている[1]。
- 属性値はすべて " " (ダブルクォーテーション)ないし ' '(シングルクォーテーション)で囲まなければならない。
正: <input type="text" size="8" /> 正: <input type='text' size='8' /> 誤: <input type=text size=8 />
- 属性名記述を省略してはならない。
正: <input type="checkbox" checked="checked" /> 誤: <input type="checkbox" checked />
- 推奨されるメディアタイプが "text/html" から "application/xhtml+xml" に変更された[2]。
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=Shift_JIS" />
[編集] 歴史
[編集] XHTML 1.0
HTML 4.01をXMLにて再定義したもので、HTML 4.01と同様にStrict、Transitional、Framesetという3種類のDTDが存在する。2000年1月26日に仕様が勧告となった。2002年8月1日に仕様が改訂され、Second Editionとなった。
[編集] XHTML Basic
XHTMLのサブセットで、PDAや携帯電話などの小規模な端末向けの小さな仕様である。2000年12月19日に仕様が勧告となった。2006年8月現在、XHTML Basic 1.1の仕様のワーキングドラフトが存在する。なお、そのワーキングドラフト内で従来の勧告はバージョン1.0であるということが明示されている。
[編集] XHTML 1.1
機能がモジュール化されたXHTML。XHTML 1.0からの主な違いは、次の通りである。
- 機能がモジュール化され、カスタマイズ性が向上した。
- HTML 4.0以来複数あったスキーマが、従来のStrictスキーマの思想を基としたスキーマ1つのみとなった。
- ルビモジュールが導入された。
[編集] XHTML 2.0
現在、仕様はワーキングドラフト(議論途上)の段階である。h要素やsection要素の導入など、以前の仕様からの大幅な改訂が見込まれている。
[編集] 関連項目
[編集] 外部リンク
- XHTML 1.0 The Extensible HyperText Markup Language
- XHTML Basic 1.0
- XHTML Basic
- XHTML 1.1 - Module-based XHTML
- XHTML 2.0 (Working Draft)
- W3C
[編集] 脚注
- ^ C. HTML Compatibility Guidelines
- ^ W3C Note: XHTML Media Types <http://www.w3.org/TR/xhtml-media-types>