Extensible HyperText Markup Language
.xhtml、.xht、.html、.htm | |
MIMEタイプ | application/xhtml+xml |
World Wide Web Consortium | |
マークアップ | |
XML、HTML | |
1.0 (Recommendation), 1.1 (Recommendation), |
HTML |
---|
Extensible HyperText Markup Language(エクステンシブル ハイパーテキスト マークアップ ランゲージ)、
なお、「eXtensible HyperText Markup Language の
HTMLとの相違 点
[XHTMLはXMLアプリケーションである。よって、XMLの
- XML
宣言 を書 く - XML
文書 であるため、文書 の頭 にXML宣言 を書 くことが奨励 されている。文字 コードについては、UTF-8ないしUTF-16の場合 やHTTPなどのプロトコルで文字 コードが指定 されている場合 は省略 可能 であるが、常 に付与 することが推奨 される。
<?xml version="1.0" encoding="UTF-8"?>
要素 名 ・属性 名 は小文字 で書 く- XMLでは
大文字 ・小文字 が厳密 に区別 される。XHTML勧告 の場合 、要素 名 ・属性 名 は全 て小文字 でのみ定義 されていることから、要素 名 ・属性 名 は共 にすべて小文字 で表記 しなければならない(なお、属性 値 はこの限 りではない)。
正 : <p id="iroha">色 は匂 へど散 りぬるを</p>正 : <p id="IROHA">色 は匂 へど散 りぬるを</p>誤 : <p ID="iroha">色 は匂 へど散 りぬるを</p>誤 : <P id="iroha">色 は匂 へど散 りぬるを</P>誤 : <P ID="iroha">色 は匂 へど散 りぬるを</P>
要素 の終了 タグを書 く要素 は必 ず開始 タグと終了 タグを備 えていなければならない(終了 タグの省略 は許 されない)。
正 : <p>色 は匂 へど散 りぬるを</p><p>我 が世 誰 ぞ常 ならん</p>誤 : <p>色 は匂 へど散 りぬるを<p>我 が世 誰 ぞ常 ならん
空 要素 の終了 タグも書 く空 要素 についても同様 に終了 タグを付与 するか、開始 タグの末尾 を「/>」としなければならない。
正 : <em>色 は匂 へど散 りぬるを</em><br />(推奨 )正 : <em>色 は匂 へど散 りぬるを</em><br/>正 : <em>色 は匂 へど散 りぬるを</em><br></br>誤 : <em>色 は匂 へど散 りぬるを</em><br>誤 : <em>色 は匂 へど散 りぬるを</em><br> </br>
属性 値 はダブルクォーテーションで囲 む属性 値 はすべて " " (ダブルクォーテーション)ないし ' '(シングルクォーテーション)で囲 まなければならない。
正 : <input type="text" size="8" />正 : <input type='text' size='8' />正 : <input type="text" size='8' />誤 : <input type=text size=8 />
属性 名 を省略 せず書 く属性 名 を省略 してはならない。なお、これらを属性 値 の省略 という例 が存在 するが、SGMLやXMLの観点 からは正 しいとはいえない。
正 : <input type="checkbox" checked="checked" />誤 : <input type="checkbox" checked />
推奨 されるメディアタイプ推奨 されるメディアタイプが「text/html」から「application/xhtml+xml」に変更 された[3]。また、HTMLで従来 使用 されていたtext/htmlは、XHTML1.1以降 では非 推奨 となっている。
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=Shift_JIS" />
メディアタイプがapplication/xhtml+xmlの
HTML
歴史
[XHTML 1.0
[HTML 4.01をXMLにて
2000
XHTML Basic
[XHTMLのサブセットで、PDAや
その
Basic1.1では、Basic1.0から
- target
属性 やscript/style要素 、style属性 の追加 - XFormsよりinputmode
属性 の追加
XHTML Modularization (Modularization of XHTML, M12n)
[XHTMLをその
XHTML 1.1
[機能 がモジュール化 され、カスタマイズ性 が向上 した。- HTML 4.0
以来 複数 あったスキーマが、従来 のStrictスキーマの思想 を基 としたスキーマ1つのみとなった。 - ルビモジュールが
導入 された。
2001
XHTML 1.2
[XHTML 2.0
[XHTML Familyの
HTML5のXML構文
[HTML5をXML
HTML5をXML
- HTML
構文 の場合 は要素 名 は固定 だが、XML構文 の場合 は要素 の名前 空間 が "http://www.w3.org/1999/xhtml" に属 していれば接頭 辞 付 きが許 される(XHTML1.x以前 には、文書 型 宣言 にモジュールを追加 することで接頭 辞 を付 けることを可能 としていたが、基本 的 には許 されなかった) - HTML
構文 では限定 的 なSVG, MathMLの拡張 しか行 えないが、XML構文 では名前 空間 を用 いて制限 なく拡張 ができる(以下 の例 ではxml:id属性 を利用 している) 従来 のHTML/XHTMLで許 されていたDTDを用 いた文字 参照 が不可能 となった(HTML5はもはやSGMLに基 づいていない)。
<?xml version="1.0" encoding="UTF-8"?>
<!-- これは妥当 なHTML5のXML構文 。ただしHTML構文 との互換 性 はない -->
<?xml-stylesheet type="text/css" href="test.css"?><!-- 左 のようなXML処理 命令 も書 ける -->
<!-- この場合 、ルート要素 がxhtml:htmlのため、通常 のHTML5のように "<!DOCTYPE html>" という文書 型 宣言 は行 えない -->
<xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xml:lang="ja">
<xhtml:head>
<xhtml:title xml:id="title">XML名前 空間 を用 いた拡張 例 (xml:id)</xhtml:title>
<xhtml:script><![CDATA[ ... ]]></xhtml:script>
</xhtml:head>
<xhtml:body>
<xhtml:p> ... </xhtml:p>
</xhtml:body>
</xhtml:html>
関連 項目
[脚注
[- ^ "XML stands for Extensible Markup Language. The X is for the first syllable of Extensible. eXtensible is a spelling error."
- ^ C. HTML Compatibility Guidelines
- ^ W3C Note: XHTML Media Types <http://www.w3.org/TR/xhtml-media-types>
- ^ XHTML Media Types - W3C Note、2002
年 8月 1日 (2013年 12月5日 閲覧 )。 - ^ HTML Living Standard — Last Updated 31 May 2021 §14 The XML syntax