HTML文書は先頭に文書型宣言( <!DOCTYPE 〜> )を記述し、残りの部分はこの要素内に記述されます。
<!ENTITY % html.content "HEAD, BODY">
<!ELEMENT HTML O O (%html.content;) -- document root element -->
<!ATTLIST HTML %i18n; -- lang, dir -->
一般的なHTML文書は、以下のような形態になります。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<HTML lang="ja">
<HEAD>
・・・・
</HEAD>
<BODY>
・・・・
</BODY>
</HTML>
この要素には、文書のタイトルやサーチエンジンなどが利用するキーワード、その他直接には文章の内容とならないようなデータを記述します。一般的に、ここに記述される要素は表示されません。
<!-- %head.misc; defined earlier on as "SCRIPT|STYLE|META|LINK|OBJECT" -->
<!ENTITY % head.content "TITLE & BASE?">
<!ELEMENT HEAD O O (%head.content;) +(%head.misc;) -- document head -->
<!ATTLIST HEAD
%i18n; -- lang, dir --
profile %URI; #IMPLIED -- named dictionary of meta info --
>
<HEAD>
<BASE target="frame2">
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<META http-equiv="Content-Style-Type" content="text/css">
<META http-equiv="Content-Script-Type" content="text/javascript">
<META name="author" content="ZSPC">
<META name="description" content="HTML4.0 Reference">
<META name="keywords" content="HTML4.0,reference,DTD">
<TITLE>SUPER HTML4.0 REFERENCE</TITLE>
<LINK rel="index" href="menu.html">
<LINK rel="prev" href="file01.html">
<LINK rel="next" href="file03.html">
<LINK rel="stylesheet" href="menu01.css" type="text/css">
<SCRIPT type="text/javascript">
<!--
・・・・・
// -->
</SCRIPT>
</HEAD>
この要素には、文書の内容を的確に表わすようなタイトルを記述します。HTML文書は、必ずHEAD要素内にこの要素を含まなければなりません。タイトルにはDTDで定義されている特殊文字(文字参照)を含むことができますが、タグを記述することはできません。
<!-- The TITLE element is not considered part of the flow of text. It should be displayed, for example as the page header or window title. Exactly one title is required per document. -->
<!ELEMENT TITLE - - (#PCDATA) -(%head.misc;) -- document title -->
<!ATTLIST TITLE %i18n>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<HTML lang="ja">
<HEAD>
<TITLE>SUPER HTML4.0 REFERENCE</TITLE>
・・・・
</HEAD>
<BODY>
・・・・
</BODY>
</HTML>
この要素は、文書の著者、キーワード、有効期限などを表したり、プロパティを設定したりするために使用されます。「name」属性でプロパティを表し、「content」属性でその値を設定します。ただし、HTML4.0では、各プロパティとその値については定義されていません。
<!ELEMENT META - O EMPTY -- generic metainformation -->
<!ATTLIST META
%i18n; -- lang, dir, for use with content --
http-equiv NAME #IMPLIED -- HTTP response header name --
name NAME #IMPLIED -- metainformation name --
content CDATA #REQUIRED -- associated information --
scheme CDATA #IMPLIED -- select form of content --
>
以下の例では、文書の文字セットが「シフトJIS」であることを示しています。JISの場合は「iso-2022-jp」、EUCの場合は「EUC-JP」を指定します。
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
以下の例では、この文書の著者・内容・キーワードを示しています。
<META name="Author" content="山田 太郎">
<META name="description" content="HTML4.0 Reference">
<META name="keywords" content="HTML4.0,reference,DTD">
以下の例では、3秒後に"zspc.html"をロードします。
<META http-equiv="refresh" content="3;URL=zspc.html">
以下の例は、文書中のデフォルトのスクリプト言語をJavaScriptに設定します。
<META http-equiv="Content-Script-Type" content="text/javascript">
以下の例は、文書中のデフォルトのスタイルシートをCSSに設定します。
<META http-equiv="Content-Style-Type" content="text/css">
この要素内に文書の実際の内容となる要素を記述します。ただし、使用するブラウザによって、その表示(表現)のされ方はまちまちだと考えてください。たとえば、一般的なグラフィカルなブラウザもあれば、音声で内容を伝えるタイプのブラウザもあります。現在では、文書のレイアウトなどをコントロールするためにはスタイルシートを使用することが推奨されていますので、表示方法に関する属性は廃止される予定となっています。
・onload = スクリプト (CT)
onunload = スクリプト (CT)
onclick = スクリプト (CT)
ondblclick = スクリプト (CT)
onmousedown = スクリプト (CT)
onmouseup = スクリプト (CT)
onmouseover = スクリプト (CT)
onmousemove = スクリプト (CT)
onmouseout = スクリプト (CT)
onkeypress = スクリプト (CT)
onkeydown = スクリプト (CT)
onkeyup = スクリプト (CT)
<!ELEMENT BODY O O (%block;|SCRIPT)+ +(INS|DEL) -- document body -->
<!ATTLIST BODY
%attrs; -- %coreattrs, %i18n, %events --
onload %Script; #IMPLIED -- the document has been loaded --
onunload %Script; #IMPLIED -- the document has been removed --
>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<HTML lang="ja">
<HEAD>
<TITLE>スタイルシートを使う</TITLE>
<META http-equiv="Content-Style-Type" content="text/css">
<STYLE type="text/css">
<!--
BODY { background-color: white; color: black }
A:link { color: blue }
A:visited { color: purple }
A:active { color: red }
-->
</STYLE>
</HEAD>
<BODY>
・・・・
</BODY>
</HTML>
この要素は、「id」属性や「class」属性とともに使用して、指定した内容をブロックレベルの要素に設定します。ただし、構造的な意味を与えるだけで、それ以外の表示方法には影響しません。したがって、必要に応じてスタイルシートや「lang」属性などに利用されます。一般的なブラウザでは、この要素の前後が改行されて表示されます。
・onclick = スクリプト (CT)
ondblclick = スクリプト (CT)
onmousedown = スクリプト (CT)
onmouseup = スクリプト (CT)
onmouseover = スクリプト (CT)
onmousemove = スクリプト (CT)
onmouseout = スクリプト (CT)
onkeypress = スクリプト (CT)
onkeydown = スクリプト (CT)
onkeyup = スクリプト (CT)
<!ENTITY % flow "%block; | %inline;">
<!ELEMENT DIV - - (%flow;)* -- generic language/style container -->
<!ATTLIST DIV
%attrs; -- %coreattrs, %i18n, %events --
>
以下の例では、指定した段落の文字を中央揃えで表示させます。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<HTML lang="ja">
<HEAD>
<TITLE>Crab Tournament '98</TITLE>
<META http-equiv="Content-Style-Type" content="text/css">
<STYLE type="text/css">
<!--
DIV.myclass { text-align: center }
-->
</STYLE>
</HEAD>
<BODY>
<P>段落1。</P>
<DIV class="myclass">
<P>段落2は中央揃えで表示されます。</P>
<P>段落3は中央揃えで表示されます。</P>
</DIV>
<P>段落4。</P>
</BODY>
</HTML>
この要素は、「id」属性や「class」属性とともに使用して、指定した内容をインラインの要素に設定します。ただし、構造的な意味を与えるだけで、それ以外の表示方法には影響しません。したがって、必要に応じてスタイルシートや「lang」属性などに利用されます。
・onclick = スクリプト (CT)
ondblclick = スクリプト (CT)
onmousedown = スクリプト (CT)
onmouseup = スクリプト (CT)
onmouseover = スクリプト (CT)
onmousemove = スクリプト (CT)
onmouseout = スクリプト (CT)
onkeypress = スクリプト (CT)
onkeydown = スクリプト (CT)
onkeyup = スクリプト (CT)
<!ELEMENT SPAN - - (%inline;)* -- generic language/style container -->
<!ATTLIST SPAN
%attrs; -- %coreattrs, %i18n, %events --
>
以下の例では、特に注意してもらいたい部分を赤で表示します。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<HTML lang="ja">
<HEAD>
<TITLE>Crab Tournament '98</TITLE>
<META http-equiv="Content-Style-Type" content="text/css">
<STYLE type="text/css">
<!--
SPAN.warning { color: red }
-->
</STYLE>
</HEAD>
<BODY>
<P>
「ヒラツメガニ捕獲シミュレーション」を長時間にわたっ
て継続して行った場合、まれに本来見えない場所にカニが
見えたり、捕獲サウンドが聞こえたりする場合があります。
このような症状が起きた場合には、<SPAN class="warning">
ただちに捕獲を中止</SPAN>し、じゅうぶんな休養をとって
ください。
それでも、目の前にカニが見え続けたり音が聞こえ続けた
場合には、<SPAN class="warning">医師の診察を受けてく
ださい</SPAN>。
</P>
</BODY>
</HTML>
この要素は、その章や節の内容を表わす見出し(表題)を示します。6段階のレベルがあり、H1要素が最上位の見出し(大見出し)、H6要素が最下位の見出し(小見出し)になります。一般的なブラウザでは、上位の見出しほど大きな文字で表示されます。この要素は、文書からこの要素を抜き出して、自動的に目次を生成するような場合にも利用される可能性があります。
一般的なブラウザを想定して、適当な大きさで太字の文字を使いたいという理由で、これら(H1〜H6)の要素を使用するべきではありません。本来の見出しとしての重要度(階層)にしたがって適切に使用してください。
・onclick = スクリプト (CT)
ondblclick = スクリプト (CT)
onmousedown = スクリプト (CT)
onmouseup = スクリプト (CT)
onmouseover = スクリプト (CT)
onmousemove = スクリプト (CT)
onmouseout = スクリプト (CT)
onkeypress = スクリプト (CT)
onkeydown = スクリプト (CT)
onkeyup = スクリプト (CT)
<!ENTITY % heading "H1|H2|H3|H4|H5|H6">
<!--
There are six levels of headings from H1 (the most important) to H6 (the least important).
-->
<!ELEMENT (%heading;) - - (%inline;)* -- heading -->
<!ATTLIST (%heading;)
%attrs; -- %coreattrs, %i18n, %events --
>
<DIV class="section">
<H1>第一章 ○○○</H1>
<P>内容・・・・
<DIV class="subsection">
<H2>第一章 第一節 △△△</H2>
<P>内容・・・・
</DIV>
</DIV>
この要素は、その文書自体やフォームなどの主要な部分に関して、制作者とコンタクトをとるための情報を示します。一般的に、文書の先頭か末尾に配置されます。
・onclick = スクリプト (CT)
ondblclick = スクリプト (CT)
onmousedown = スクリプト (CT)
onmouseup = スクリプト (CT)
onmouseover = スクリプト (CT)
onmousemove = スクリプト (CT)
onmouseout = スクリプト (CT)
onkeypress = スクリプト (CT)
onkeydown = スクリプト (CT)
onkeyup = スクリプト (CT)
<!ELEMENT ADDRESS - - (%inline;)* -- information on author -->
<!ATTLIST ADDRESS
%attrs; -- %coreattrs, %i18n, %events --
>
<ADDRESS>
制作:<A href="../staff/kani.html">ZSPC</A>
E-mail:<A href="mailto:kani@zspc.com">kani@zspc.com</A>
</ADDRESS>