html要素

概要

html要素はHTML/XHTMLの最上位要素です。

要素の内容

HTML4.01 Strict/Transitional, XHTML1.0 Strict/Transitional, XHTML1.1

headbodyの順に一つずつ記述します。

HTML4.01 Frameset, XHTML1.0 Frameset

headframesetの順に一つずつ記述します。

属性

固有属性

属性名 属性値 説明
version CDATA 非推奨属性。HTMLのバージョンを明示するための属性です。HTML4.01 Transitional/FramesetとXHTML1.1で利用できます。値は、HTML4.01 Transitionalの場合は"-//W3C//DTD HTML 4.01 Transitional//EN"、HTML4.01 Framesetの場合は"-//W3C//DTD HTML 4.01 Frameset//EN"、XHTML1.1の場合は"-//W3C//DTD XHTML 1.1//EN"に固定されています。

汎用属性

id(XHTML1.0のみ), langxml:lang), dir, xmlns(XHTMLのみ)

xmlns属性の値は"http://www.w3.org/1999/xhtml"で固定されています。それ以外の値を指定することはできません。

説明

html要素はHTML/XHTMLの最上位要素(ルート要素、文書要素)です。他のすべての要素はhtml要素の子孫となります。また、一つの文書中に複数のhtml要素が存在することはありません。

タグの省略

html要素はどんなHTML/XHTML文書でも必ず一つだけ存在します。そして、タグを明記しなくても文書の最初から最後までがhtml要素であることは明らかです。そのため、HTMLではhtml要素の開始タグと終了タグを省略しても良いことになっています(XHTMLではXMLの制約によりタグの省略は認められていません)。ただし、普通は省略しません。

lang属性

最上位要素であるhtml要素にlang属性(XHTMLではxml:lang属性)を指定することで、文書全体の言語を明示することができます。この属性に応じて挙動を変えるブラウザはそれほど多くないようですが、書いておくことで生じるデメリットはほとんど無いので(あるとするとファイルサイズが若干増えることぐらいでしょうか?)、書いておくと良いでしょう。

version属性

バージョン情報はDOCTYPE宣言で明示されるため、version属性はHTML4で非推奨とされXHTML1.0では消滅しました。しかし、XHTML1.1では復活しています。

XMLではDTDが必ずしも必須ではないため、DOCTYPE宣言の無いXML文書でバージョンを明示するためにversion属性を復活させたのではないかと思います。XHTML1.1の場合でもDOCTYPE宣言があれば、敢えてversion属性でバージョンを明示する必要はありません。

xmlns属性

XHTMLでは最上位要素であるhtml要素で名前空間を明示します。

<?xml version="1.0"?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.1//EN"
  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">
<head>
...

関連要素