16. その他のブロックレベル要素
これまで勉強してきたブロックレベル要素としては、 段落要素(p要素)、 見出し要素(h1〜h6要素)、 リスト要素(ul要素、ol要素、dl要素)がある。 ここでは、それ以外の主なブロックレベル要素を勉強する。
address要素
address要素は、著作者情報を意味する要素である。内側にはインライン要素のみを記述することができる。 下にaddress要素のDTDと使用例を示す。
<!ELEMENT address %Inline;>
<address>(C)Copyright 御隠居</address>
hr要素
hr要素は、水平区画線を意味する要素である。この要素は空要素である。 また、多くのブラウザでは水平線として描画するものが多い。 下にhr要素のDTDと使用例を示す。
<!ELEMENT hr EMPTY>
<hr />
blockquote要素
blockquote要素は、ブロックレベルの引用文を意味する要素である。内側にはブロックレベル要素のみを記述することができる。 下にblockquote要素のDTDと使用例を示す。
<!ELEMENT blockquote %Block;>
<blockquote><p>引用文の記述</p></blockquote>
pre要素
pre要素は、整形済みテキスト(pretextformatted text)を意味する要素である。 内側には一部の要素(img、object、big、small、sub、sup)を除いたインライン要素のみを記述することができる。 段落等では、コード上での空白や改行が無視されるが、pre要素内の空白や改行は有効となり、 その形式のまま表示する。下にpre要素のDTDと使用例を示す。
<!ENTITY % special.pre "br | span | bdo | map">
<!ENTITY % fontstyle "tt | i | b | big | small ">
<!ENTITY % phrase "em | strong | dfn | code | q |
samp | kbd | var | cite | abbr | acronym | sub | sup ">
<!ENTITY % inline.forms "input | select | textarea | label | button">
<!ENTITY % misc.inline "ins | del | script">
<!-- pre uses %Inline excluding big, small, sup or sup -->
<!ENTITY % pre.content
"(#PCDATA | a | %fontstyle; | %phrase; | %special.pre; | %misc.inline;
| %inline.forms;)*">
<!ELEMENT pre %pre.content;>
<pre>Preformat1
Preformat2
Preformat3</pre>
このサンプルは次のように表示される。実際、pre要素をp要素に書き換えて比較すれば違いが明確になるだろう。
Preformat1 Preformat2 Preformat3
pre要素では、その内容にインライン要素が記述できるが、その中でimg、object、big、small、sub、supの各要素は、 記述することができないので注意が必要だ。