#?SuikaWiki/0.9 * head 要素型 (HTML, XHTML 1) [3] [CODE(HTMLe)[head]] 要素は、[[文書]]の[[内容]]とはみなされない文書に関する情報 ([[メタ情報]]) を記述するのに使います。 仕様書: [HTML 4] [4] [[UA]] は通常この要素の内容を[[レンダリング]]しませんが、何らかの手段で[[利用者]]にその情報を提示しても構わないと HTML 4 仕様書は言っています。 メタ情報の重要性が説かれる現在では、 汎用 UA はむしろその手段を必ず用意する'''べき'''でしょう。 [5] :[[開始タグ]] (HTML 4):省略可能 :開始タグ (XHTML):必須 :[[終了タグ]] (HTML 4):省略可能 :終了タグ (XHTML):必須 :[[内容模型]]: [CODE(SGML)[([CODE(HTMLe)[[[title]]]] & [CODE(HTMLe)[[[base]]]]?) +([VAR[%[[head.misc]]]])]] :出現できる文脈:[CODE(HTMLe)[[[html]]]] 第1子要素 :[[属性]]: ,属性名 ,属性値型 ,既定値,意味,出典 ,[CODE(HTMLa)[[[lang]]]],[[言語札]],(継承),[[自然言語]],"[HTML4], [XHTML1]" ,[CODE(HTMLa)[[[xml]]:lang]],言語札,(継承),自然言語,[XHTML1] ,[CODE(HTMLa)[[[profile]]]],[CODE(ABNF)[[[URI参照]] *([[空白]] URI参照)]],(なし),メタ情報の辞書,"[HTML4], [XHTML1]" [[#comment]] ** 内容模型 [6] HTML 4 では、内容模型に[[添加要素指定]]が使われていて少々分かりにくくなっていますが、 その主張は簡単なことで、[Q[すべての要素の出現順序は無制限。 [CODE(HTMLe)[[[title]]]] は丁度1つ必要。 [CODE(HTMLe)[[[base]]]] は高々1つ必要。他は任意個 OK。]]です。 ただし、 DTD に現れない仕様書本文での制限で、 [CODE(HTMLa)[[[http-equiv]]]] が [CODE(HTTP)[[[Content-Type]]]] の [CODE(HTMLe)[[[meta]]]] を使う時は可能な限りはじめの方にいれることになっています。 [7] 古い時代の DTD 案では、 [CODE(HTMLe)[title]] が必須でなかったこともありました。 実際の文書では今でも [CODE(HTMLe)[title]] が欠けていることがしばしばあります。 また、 [CODE(HTMLe)[base]] が ([CODE(HTMLa)[[[href]]]] と [CODE(HTMLa)[[[target]]]] などで) 複数あることもたまにあります。 [[#comment]] ** 歴史 [8] 一番初めの [[SGML]] もどきな頃の HTML に [CODE(HTMLe)[head]] 要素型はありませんでした。 その後 SGML 的形式を整えるに当たって、 本文そのものではない [CODE(HTMLe)[title]] 要素を収納する要素が考えられました。 [1] 最初は [[Dan Connolly]] は [CODE(HTMLe)[[[heading]]]] という名前で呼んでいました (''WWW-Talk 1992: HTML DTD issues'' )。その後 [CODE(HTMLe)[header]] 要素として結構使われました。 (W3C の古文献などを探してみてください。すぐ見つかります。) しかしその後要素型名は [CODE(HTMLe)[head]] となりました。 [2] >>1 の次の [[TimBL]] の返信ではおお! [CODE(HTMLe)[header]]/[CODE(HTMLe)[body]] なんて[[メイル]]みたいでいい感じじゃん☆って話になってます。 [[#comment]] * メモ