[12]
:[[開始タグ]]:必須
:[[終了タグ]]:必須
:[[内容モデル]]:[CODE(SGML)[(%[[inline]];)*]]
:出現できる文脈:[CODE(SGML)[%[[block]]]] な文脈
:[[属性]]:
,[CODE(HTMLe)[[[align]]]] , , ,[[配置]] ,[HTML4] 非推奨
,[CODE(HTMLa)[[[class]]]] , , ,[[級]] ,[HTML4] %[[coreattr]]
,[CODE(HTMLa)[[[datafld]]]] , , ,欄名 ,[HTML4] 予約
,[CODE(HTMLa)[[[dataformat]]]] , , ,データ書式 ,[HTML4] 予約
,[CODE(HTMLa)[[[datasrc]]]] , , ,データ源 ,[HTML4] 予約
,[CODE(HTMLa)[[[dir]]]] , , ,[[書字方向]] ,[HTML4] %[[i18n]]
,[CODE(HTMLa)[[[id]]]] , , ,一意識別子 ,[HTML4] %coreattr
,[CODE(HTMLa)[[[lang]]]] , , ,[[自然言語]] ,[HTML4] %i18n
,[CODE(HTMLa)[[[xml]]:lang]] , , ,自然言語 ,[XHTML1]
,[CODE(HTMLa)[[[onclick]]]] , , , ,[HTML4] %[[events]]
,[CODE(HTMLa)[[[ondblclick]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onkeydown]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onkeypress]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onkeyup]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onmousedown]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onmouseout]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onmouseover]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[onmouseup]]]] , , , ,[HTML4] %events
,[CODE(HTMLa)[[[style]]]] , , ,スタイル情報 ,[HTML4] %coreattr
,[CODE(HTMLa)[[[title]]]] , , ,注釈的題 ,[HTML4] %coreattr
[[#comment]]
** 付番
[14] [[付番]] [VAR[n]] (注 >>15) は、 [[IETF]] や [[W3C]]
の規定する [[HTML]] 仕様では [CODE(HTMLe)[1]]〜[CODE(HTMLe)[6]]
が定義されています。
HTML 4 仕様書によれば、 [CODE(HTMLe)[h1]] が最も重要度が高い見出し、
[CODE(HTMLe)[h6]] が最も重要度が低い見出しです。
[15] 注意: [[SGML]] 的 ([[SGML宣言]]および [[DTD]] 的) 意味では [VAR[n]]
は付番とは言えませんが、付番は付番です (開き直り)。
[17]
[[Word]] 9 は 7 を超えると、 [CODE(HTMLe)[[[class]]]] が [SAMP[MsoHeading8]] のような [CODE(HTMLe)[[[p]]]], [CODE(HTMLe)[[[div]]]] または [CODE(HTMLe)[[[li]]]] を吐く模様です。 9 まで確認されています。
([[名無しさん]])
[18]
>>17 Word 10 でも同じ。
([[名無しさん]])
[19]
付番を文書ではなく文書群に対するものと考える人も少なくないようですが、それは誤りです。
([SAMP(URI)[toc.html]] は [CODE(HTMLe)[h1]] からはじめて、 [SAMP(URI)[section1.html]] は [CODE(HTMLe)[h2]] からはじめて、 [SAMP(RUI)[section1-subsection2.html]] は [CODE(HTMLe)[h3]] からはじめて、・・・というような使い方は誤り。)
元々付番は文書の中で使うもので、文書群なんてものは考えられていません。
(しかし想定外なのですから、文書の一部分を別の文書に持っていった際に付番はそのままにしたようなもの、と考えるのも悪くはない気がしますね。どうしたものでしょう?)
([[名無しさん]])
[20]
[[LaTeX]] で [CODE[[[part]]]] とか [CODE[[[chapter]]]] がなくて [CODE[[[section]]]] が最上位だったりするのは普通なことですから、 SGML や HTML で [CODE(HTMLe)[h2]] くらいから始まっていても悪くはないような気もします。付番の最初は SGML 的に規定されていませんし。
やっぱり [[XHTML 2]] のような水準に中立なモデル化が何も考えずに済むので便利でしょうかね。
([[名無しさん]])
[[#comment]]
*** 付番の飛び越し
[9] たとえば
[PRE[
]PRE]
のように、 [CODE(HTMLe)[h2]] の抜けた [[HTML文書]]があります。
HTML 2 や HTML 4 の DTD 的にはこのような文書も[[妥当]]です。
[10] しかしながら、見出しの水準は飛ばすべきではありません
[SRC[RFC 1866 5.4.]] し、飛ばすのを良く思わない人もいます [SRC[HTML 4]]。
飛ばすことによって他の形式への変換に支障をきたすこともあります
[SRC[RFC 1866 5.4.]]。
[[#comment]]
** 見出し要素の応用
*** 目次生成
[13] [[UA]] は、見出し要素を使って文書の[[目次]]を自動生成することができます [HTML4]。
[[#comment]]
*** レンダリング
[16] [[視覚ブラウザ]]は、通常、重要度の高い (付番の小さい) 見出しをより低い
(大きい) 見出しよりも大きく描画します [HTML4]。
[2] 古い [[mosaic]] の日本語版では、 [CODE(HTML)[h1]]〜[CODE(HTML)[h6]] 各要素の大きさが6段階であるべきなのに、3段階にしかならないことがあったそうです。
[24] 古い時代の典型レンダリング [SRC[RFC 1866 5.4.]]:
,要素型,太字,斜体,大きさ,左右余白,上下余白
,[CODE(HTMLe)[h1]],○,×,非常に大きい,中央寄せ,"1,2行"
,[CODE(HTMLe)[h2]],○,×,大きい,左揃え,"1,2行"
,[CODE(HTMLe)[h3]],×,○,大きい,十分字下げ,"1,2行"
,[CODE(HTMLe)[h4]],○,×,普通,[CODE(HTMLe)[h3]] より字下げ,"1行"
,[CODE(HTMLe)[h5]],×,○,普通,[CODE(HTMLe)[h4]] 程度字下げ,"上1行"
,[CODE(HTMLe)[h6]],○,×,普通,[CODE(HTMLe)[h5]] より字下げ,"上1行"
[[#comment]]
**** 番号振り
[8] HTML 自体では、見出しに自動的に章節番号を与えることはできません。
しかし、そのような [[UA]] はありますし、[[スタイル言語]]を併用することで[[著者]]がこれを制御することも可能です。
[SRC[HTML 4 ]]
これが可能なスタイル言語の例としては、 [[CSS2]] や [[XSL]]
や [[DSSSL]] が挙げられます。 ([[JSSS]] はどうだろう?)
[[#comment]]
*** その他
[[#comment]]
** 不思議解釈
[3] [CODE(HTML)[h[VAR[n]]]] 要素型群が見出しであるとしながらも、文字の大きさを変えるのに使うこともできると説明している文章もあります。後者の間違った用法しか説明しない完璧な[[不思議]]解説もいやらしいですが、この種のもなあ。
[4] 見出し要素型群がまともに使ってもらえなくなったのって、
絶対 [[NN]] の既定のスタイルシート (もしかしたら [[mosaic]] のも。)
で見出しの大きさがはちゃめちゃだった影響が8割くらいありますよね。
見出し水準1は馬鹿でかいし、
水準4以下は普通の文字よりも小さい。
普通の文字より小さい見出しがいったいどこの世の中にありますか。
であるからにして、 NN が登場してから [[CSS]]
が普及するまで、見出しタグを使うとウェブ頁が正視に堪えられなくなるという状態だったわけですよ。
ふと目をそらせば [CODE(HTMLe)[[[font]]]]
タグが漂っている。どっちが常識的な選択かは明らかでしょ。
[5] もちろん、 >>4 は昔話であって、
現代でありながら見出しを正しく使っていない文書の著者は間抜けですよ。
[6] [WEAK[(よくわからないけど仮に mosaic でも NN みたいにまともじゃない見出しの文字の大きさだったとして、)]] mosaic の多く (多分、ある時点よりあとの版) は利用者設定のスタイルシートを実装していて、見出しの文字の大きさも自分で指定できたと思うのですけど、できたからといってちゃんとまともな大きさにしていた人がどれだけいたか。
[[#comment]]
** 例
[22] 見出しを含む簡単な文書片 [SRC[RFC 1866 5.4.]]
[PRE(HTML)[
This is a heading
Here is some text
Second level heading
Here is some more text.
]PRE]
[[#comment]]
** メモ
[7] 見出し要素は、節の始まりを暗示しているのでありますが、 [[DTD]]
的あるいは [[XML]] 的にはどこからどこまでが節なのか明示することまではできません。
HTML 4 仕様書は、 [CODE(HTMLe)[[[div]]]]
要素を使ってこれを明示する例を示しています。
ちなみに、 [[XHTML 2]] は [CODE(XHTMLe)[[[section]]]]
という新要素型を導入しています。
[[#comment]]
* メモ