すぐにホームページが作れるように HTMLの書き方を簡単にまとめてみました。 ただし、あまりにも説明が簡単であったり、不正確な表現もかなりありますので、 より詳しく勉強したい人は、 情報科学演習関連のリンク で紹介したページやその他の参考ページ、参考書などを自分で調べてください。 意見・感想は 松本 まで。
タグ(<要素名>と</要素名>)を使って、文書内の各要素を定義していきます。
<html> <head> <title>初めてのページ</title> </head> <body> これは初めてのページです。 </body> </html>
<head>〜</head> には、表示したい内容ではなく、ページのタイトルやキーワード、文字コードなどの情報(メタ情報)を入れておきます。 <title>〜</title> にはそのページの題を書きます。 そして表示したい内容は、<body>〜</body> の間に書きます。 始まりのタグを書いたら忘れないうちに終りのタグも書いておきましょう。
歴史的な発展に伴い、HTMLにはいろいろなバージョン(文法)があります。 そして、どのバージョンの HTML を使用して内容を記述するか、 ということを明記するために文書型定義 (Document Type Definition) とよばれるものを最初の行に書いておく必要があります。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd""> <html> <head> <title>初めてのページ</title> </head> <body> これは初めてのページです。 </body> </html>
文書型宣言については、 神崎さんのページに詳しい説明があります。
ブラウザやサーバにも依存しますが、日本語のコードを正しく指定しないと 文字化けしてしまうブラウザもあります。 アクセシビリティを向上させるためにも以下のようにヘッダに日本語コードを記述しておきましょう。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd""> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf8" /> <title>初めてのページ</title> </head> <body> これは初めてのページです。 </body> </html>
charset
のところは日本語のコードを指定します。
以前はGNU/LinuxやUnixではEUCが、
WindowsやMacではshift-jisが使われていましたが、最近ではutf-8がよく使われます。
EUCの場合には「euc-jp」、shift-jisの場合には「Shift_JIS」、
JISコードの場合には「ISO-2022-JP」、 UTF-8の場合には「utf-8」と指定してください。
文字の色や大きさ、背景の色、その他、 空白などの
文書レイアウトに関する設定は、 スタイルシートを用いて行います。
以下の例では、mystyle.css
という別のファイルを作成して、
そこにスタイルを記述しています。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <link rel="stylesheet" href="mystyle.css" type="text/css"> <title>スタイルシートを使った例</title> </head> <body> このようにスタイルを別のファイルで指定しておくと、 複数のページで共通のスタイルを使用しても、 変更する場合には一つのファイルだけを編集すればいいだけなので とても便利です。 </body> </html>
body { color: #6600cc; background-color: #ccff99; margin-left: 10%; margin-right:10%; }
この例では、mystyle.css
というファイルを作成して、
そこにスタイルを記述しています。
見出しのレベルは1から6まであります。
<h1>見出し1</h1> <h2>見出し2</h2> <h3>見出し3</h3> <h4>見出し4</h4> <h5>見出し5</h5> <h6>見出し6</h6>
これらのタグはいろいろなレベルの見出しを指定するものであって、 文字の大きさを指定するものではない、 ということに注意してください。 表示される見出しの文字の大きさはスタイルシートで指定します。
位置や色などの体裁はスタイルシートで記述します。
<h2>左寄せ見出し</h2> <h3>センタリングした青い見出し (背景は黄色)</h3> <h4>右寄せした赤い見出し</h4>
h2 { text-align: left; font-size: large;} h3 { text-align: center; color:blue; background-color: yellow;} h4 { text-align: right; color:red;}
このようにして、それぞれのエレメントのスタイルを指定することができます。 位置と色などスタイルを複数指定する場合には、 セミコロン(;)で区切って続けて指定します。 色に関しては、色の指定の説明を見てください。 また、タグの中で直接スタイルを指定することもできますが、 この場合には <head> 〜 </head> の中に以下の行を入れておきましょう。
<meta http-equiv="Content-Style-Type" content="text/css">
<p> ひとつの段落はこのように区切ります。 </p> <p> これは次の段落です。 ひとつの段落を適当に区切ってあまり長くならないようにしましょう。 単に改行したい場合には次の「改行」のようにしてください。 </p> <p> それぞれの段落でどのようなことを書くのか、 ということをよく考えましょう。 </p>
ひとつの段落はこのように区切ります。
これは次の段落です。 ひとつの段落を適当に区切ってあまり長くならないようにしましょう。 単に改行したい場合には次の「改行」のようにしてください。
それぞれの段落でどのようなことを書くのか、 ということもよく考えましょう。
強制的に改行するときには、<br /> このようにします。
<br /> の乱用はなるべく避けましょう。 通常は、段落の指定 <p>〜</p> で十分だと思います。 プログラムのソースコードのように、そのまま表示したい場合には <pre>〜</pre> を使った方が便利です。
<ul> <li>理科</li> <li>体育</li> <li>算数</li> </ul>
このようにひとつひとつの項目(List Item)を <li>〜</li> で囲みます。
<ol> <li>理科</li> <li>体育</li> <li>算数</li> </ol>
番号つきリストの場合、このようにひとつひとつの項目(List Item)に 自動的に番号がつきます。
<dl> <dt>順序なしリスト</dt> <dd>順序(番号)をつけない箇条書き。記号を変えることもできる。</dd> <dt>順序つきリスト</dt> <dd>順序をつける箇条書き。自動的に番号がつく</dd> <dt>定義リスト</dt> <dd>定義を列挙する。辞書的な用法に適している。</dd> </dl>
このように定義リストでは定義する用語 (Definition Term) と 定義の説明 (Definition Description) のペアを列挙します。
<ul> <li>すきな科目 <ol> <li>理科</li> <li>体育</li> <li>算数</li> </ol> </li> <li>趣味 <ol> <li>スキー</li> <li>サッカーゲーム</li> </ol> </li> </ul>
このように箇条書きの項目 (List Item)の中に箇条書きを 含めることができます。これを入れ子構造と言います。
<a href="http://www.shinshu-u.ac.jp/">信州大学のホームページ</a>
スペル間違いを無くすため、URL はなるべく手で入力せず コピー&ペーストで入力するようにしましょう。
<a href="another.html">次のページ</a>へ進む <br /> <a href="recipe/curry.html">カレーのレシピ</a> <br /> <a href="../foo.html">親ディレクトリのファイル</a>
ファイルにリンクを張る場合には必ず相対パスで表記します。
リンク先のファイルが同じディレクトリにある場合には
単にファイル名だけを書くか、現在のディレクトリ「./」
に続いてファイル名を書きます。
また親ディレクトリ(ひとつ上のディレクトリ)は「../」で表します。
絶対パス (/home/…/public_html/…
) では
絶対に書かないようにしましょう。
… <br /> … <br /> <h2 id="sample1">ジャンプ先</h2> (ここに飛びたい) …<br /> … <br /> … <br /> … <br /> … <br /> … <br /> <a href="#sample1">ここから飛びたい</a> <br /> <a href="foo.html#sample2">違うファイルの特定の箇所</a>
ジャンプしたいh2に
<h2 id="…">ジャンプ先<h2>
のようにしてあらかじめidで名前を付けておきます。
参照する場合には、その名前の前に #
を付けます。
ところで「このページの最初にもどる」 でこのページの最初に戻ることができるのは、最初の見出しのところに
<h1 id="top">HTMLの復習</h1>
のように名前を付けておいたからです (このページのソースを見ればわかります)。
<address> <a href="mailto:matsu@johnen.shinshu-u.ac.jp">Seiji Matsumoto</a> </address>
書いたページに責任を持つという意味でも、 ページの最後が最初に自分の署名をいれておきましょう (もちろん <body>〜</body> の間に書く)。
<hr /> <hr style="width:70% ; margin-left:15% ;" />
< 小なり <br /> > 大なり <br /> & アンパサンド <br /> " ダブル・クォート <br /> 空白
上のように HTML で特殊な意味を持つ文字は、 そのまま書いてはいけません。
<pre> 書いたテキストは このように そのまま表示される。 プログラムのソースコードを表示するときに よく用いられる。 </pre>
書いたテキストは このように そのまま表示される。 プログラムのソースコードを表示するときに よく用いられる。
<p>エリック・レイモンドは「How To Become A Hacker」の中で、</p> <blockquote> <p>プログラムを学ぶということは、よい自然な言語を書くのを学ぶようなも のです。学ぶのにもっともよい方法はフォームをマスターした者によって書か れたものを読むことです。自分で何かを書く、もっとたくさん読む、少し書く、 もっとたくさん読む、もっと何かを書く......そしてあなたの書くものが、手 本で理解できた長所を取り入れ無駄がはぶかれた美しいものに進展しはじめる まで繰り返しなさい。 </p> </blockquote> <p>と書いている。</p>
エリック・レイモンドは「How To Become A Hacker」の中で、
プログラムを学ぶということは、よい自然な言語を書くのを学ぶようなも のです。学ぶのにもっともよい方法はフォームをマスターした者によって書か れたものを読むことです。自分で何かを書く、もっとたくさん読む、少し書く、 もっとたくさん読む、もっと何かを書く......そしてあなたの書くものが、手 本で理解できた長所を取り入れ無駄がはぶかれた美しいものに進展しはじめる まで繰り返しなさい。
と書いている。
もちろんスタイルを指定することもできます (色の指定参照)。
blockquote { margin-left: 2em; background-color: #ffccff; }
と書いている。プログラムを学ぶということは、よい自然な言語を書くのを学ぶようなも のです。学ぶのにもっともよい方法はフォームをマスターした者によって書か れたものを読むことです。自分で何かを書く、もっとたくさん読む、少し書く、 もっとたくさん読む、もっと何かを書く......そしてあなたの書くものが、手 本で理解できた長所を取り入れ無駄がはぶかれた美しいものに進展しはじめる まで繰り返しなさい。
<p> <img src="car.png" alt="車の絵" /> <img src="car.png" width="200" height="100" alt="車の絵" /> </p>
src
にはファイル名あるいは URL を指定します。
グラフィカルなブラウザでなくても内容がある程度わかるように、
画像の簡単な説明を alt
属性に書いておきましょう。
通常は width
や height
で画像のサイズを指定しますが、
小さな画像(解像度の低い画像)を拡大した場合にはギザギザになります。
<table> <caption>月の名前</caption> <tr> <td> 1月 </td> <td> 睦月 </td> <td> January </td> </tr> <tr> <td> 2月 </td> <td> 如月 </td> <td> February </td> </tr> <tr> <td> 3月 </td> <td> 弥生 </td> <td> March </td> </tr> </table>
1月 | 睦月 | January |
2月 | 如月 | February |
3月 | 弥生 | March |
1行 (Table Raw) ごとに <tr>〜</tr> で囲みます。 さらに一つの欄 (Table Data、セルとも言う) を <td>〜</td> で囲みます。<caption>〜</caption> には表の説明を書きます。
<table border="1"> <caption>月の名前</caption> <tr> <td> 4月 </td> <td> 卯月 </td> <td> April </td> </tr> <tr> <td> 5月 </td> <td> 皐月 </td> <td> May </td> </tr> </table>
4月 | 卯月 | April |
5月 | 皐月 | May |
<caption>〜</caption> で表の題を書いておきましょう。
いろいろな表の例が ネットスケープ社のページ にあります。
span.hitokotomidashi { color: #0000FF; background-color: #FFFF00; } span.important { color: red; }
<span class="hitokotomidashi">今日のひとこと</span> できるだけ<span class="important">文書の構造とスタイルを分離</span>しましょう。
以前は <font> というタグを使って文字の色や大きさを指定していましたが、 文書の構造とスタイルを分離するという近年の流れでは、 なるべくスタイルシート使った方がよいでしょう また、書体も変えることができますが、 表示のされかたはブラウザやOSにかなり依存していますので 自分が見ているのと同じように他の人が見ているという保証は全然ありません。 (なるべく文字の体裁よりも内容に時間を使いましょう)。
#000000 | #000033 | #000066 | #000099 | #0000CC | #0000FF |
#003300 | #003333 | #003366 | #003399 | #0033CC | #0033FF |
#006600 | #006633 | #006666 | #006699 | #0066CC | #0066FF |
#009900 | #009933 | #009966 | #009999 | #0099CC | #0099FF |
#00CC00 | #00CC33 | #00CC66 | #00CC99 | #00CCCC | #00CCFF |
#00FF00 | #00FF33 | #00FF66 | #00FF99 | #00FFCC | #00FFFF |
#330000 | #330033 | #330066 | #330099 | #3300CC | #3300FF |
#333300 | #333333 | #333366 | #333399 | #3333CC | #3333FF |
#336600 | #336633 | #336666 | #336699 | #3366CC | #3366FF |
#339900 | #339933 | #339966 | #339999 | #3399CC | #3399FF |
#33CC00 | #33CC33 | #33CC66 | #33CC99 | #33CCCC | #33CCFF |
#33FF00 | #33FF33 | #33FF66 | #33FF99 | #33FFCC | #33FFFF |
#660000 | #660033 | #660066 | #660099 | #6600CC | #6600FF |
#663300 | #663333 | #663366 | #663399 | #6633CC | #6633FF |
#666600 | #666633 | #666666 | #666699 | #6666CC | #6666FF |
#669900 | #669933 | #669966 | #669999 | #6699CC | #6699FF |
#66CC00 | #66CC33 | #66CC66 | #66CC99 | #66CCCC | #66CCFF |
#66FF00 | #66FF33 | #66FF66 | #66FF99 | #66FFCC | #66FFFF |
#990000 | #990033 | #990066 | #990099 | #9900CC | #9900FF |
#993300 | #993333 | #993366 | #993399 | #9933CC | #9933FF |
#996600 | #996633 | #996666 | #996699 | #9966CC | #9966FF |
#999900 | #999933 | #999966 | #999999 | #9999CC | #9999FF |
#99CC00 | #99CC33 | #99CC66 | #99CC99 | #99CCCC | #99CCFF |
#99FF00 | #99FF33 | #99FF66 | #99FF99 | #99FFCC | #99FFFF |
#CC0000 | #CC0033 | #CC0066 | #CC0099 | #CC00CC | #CC00FF |
#CC3300 | #CC3333 | #CC3366 | #CC3399 | #CC33CC | #CC33FF |
#CC6600 | #CC6633 | #CC6666 | #CC6699 | #CC66CC | #CC66FF |
#CC9900 | #CC9933 | #CC9966 | #CC9999 | #CC99CC | #CC99FF |
#CCCC00 | #CCCC33 | #CCCC66 | #CCCC99 | #CCCCCC | #CCCCFF |
#CCFF00 | #CCFF33 | #CCFF66 | #CCFF99 | #CCFFCC | #CCFFFF |
#FF0000 | #FF0033 | #FF0066 | #FF0099 | #FF00CC | #FF00FF |
#FF3300 | #FF3333 | #FF3366 | #FF3399 | #FF33CC | #FF33FF |
#FF6600 | #FF6633 | #FF6666 | #FF6699 | #FF66CC | #FF66FF |
#FF9900 | #FF9933 | #FF9966 | #FF9999 | #FF99CC | #FF99FF |
#FFCC00 | #FFCC33 | #FFCC66 | #FFCC99 | #FFCCCC | #FFCCFF |
#FFFF00 | #FFFF33 | #FFFF66 | #FFFF99 | #FFFFCC | #FFFFFF |
body { color: #FFFF00; background-color: #336666; background-image: url(mybackground.jpg); }
このようにスタイルシートを使えばいろいろな要素に対して その表現方法を指定してすることができます。
例えば とほほのスタイルシート入門に詳しく載っています。
チケットは<del>まだあります</del> 完売しました。
以前のテキストをどのように変更したかはっきりと示したいときには この取消しのタグをつかいましょう。
Last modified: Wed Jun 9 10:19:04 JST 2004