← 1.15 箇条書き(リスト)の作り方 目 次 1.17 属性リスト(DTD編) →
これまで学習してきたブロックレベル要素としては,段落要素(p要素),見出し要素(h1〜h6要素),リスト要素(ul要素,ol要素,dl要素)がありました。ここでは,それ以外の主なブロックレベル要素について学習します。
address要素は,著作者情報を意味する要素です。内側にはインライン要素のみを記述することができます。以下にaddress要素のDTDと使用例を示します。
<!ELEMENT address %Inline;>
<address>(C)Copyright 御隠居</address>
hr要素は,水平区画線を意味する要素です。この要素は空要素となります。また,多くのブラウザでは水平線として描画されます。以下にhr要素のDTDと使用例を示します。
<!ELEMENT hr EMPTY>
<hr />
空要素では「/>」の前に空白を挿入することがありますが,DTDから見た場合,この空白は不用です。ただし,古いブラウザでは誤った解釈をする場合があるので,前方互換の観点から空白を挿入することが一般的です。
blockquote要素は,ブロックレベルの引用文を意味する要素です。内側にはブロックレベル要素のみを記述することができます。以下にblockquote要素のDTDと使用例を示します。
<!ELEMENT blockquote %Block;>
<blockquote><p>引用文の記述</p></blockquote>
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の各要素は,記述することができないので注意してください。