ハイパーテキストの一つの特徴として、ハイパーテキスト中の任意の部分に、 他のハイパーテキストなどを表示する足掛かり (「リンク」と呼ばれる) を埋め込む機能がある。 このリンクの例を見てみる。
リンク集
<H2><A HREF=link.html>リンク集</A></H2>
これで index.html の中にリンクが埋め込まれた。
Netscape で index.html を表示してみると「リンク集」
という青色で下線が付いた行が加わったのがわかるはず。
Netscape ではリンクはこのような表示になる
(ブラウザが違ったりブラウザの設定が違うと異なった表示になることがある)。
<HTML>
<HEAD>
<TITLE>My links</TITLE>
</HEAD>
<BODY>
<DIV ALIGN=CENTER>
<H2>リンク集</H2>
</DIV>
<HR>
<H2>大学関係</H2>
<UL>
<LI><A HREF="http://www.osaka-u.ac.jp/">大阪大学</A></LI>
<LI><A HREF="http://www.sci.osaka-u.ac.jp/index-jp.html">理学部</A></LI>
<LI><A HREF="http://www.phys.sci.osaka-u.ac.jp/index-jp.html">物理学科</A></LI>
</UL>
<H2>趣味</H2>
</BODY>
</HTML>
<H2>趣味</H2>
<HR>
<A HREF=index.html>TOPへ戻る</A>
</BODY>
<HR>
ご意見ご感想は<A HREF="mailto:sp20nnxx@ecs.cmc.osaka-u.ac.jp">sp20nnxx@ecs.cmc.osaka-u.ac.jp</A>まで
</BODY>
ハイパーテキストでは、テキスト(文字)データと同様に画像データが扱える。 そのやりかたを見てみる。
簡単な画像の埋め込み
<HTML>
<HEAD>
<TITLE>My photos</TITLE>
</HEAD>
<BODY>
<DIV ALIGN=CENTER>
<H2>写真集</H2>
</DIV>
<HR>
<P>
下の画像をクリックすると大きな画像が表示されます。
</P>
<A HREF=duck.jpeg><IMG SRC=duck-s.jpeg ALT="photo of duck"></A>カモ(メス)<BR>
</BODY>
</HTML>
http://webserver/~sp20nnxx/photo.htmlURL中の sp20nnxx は自分のアカウント名(ユーザー名) を入れる。 テキストと小さな画像(duck-s.jpeg)が表示されたはず。
<A HREF=duck.jpeg><IMG SRC=duck-s.jpeg ALT="photo of duck" ALIGN=TOP></A>カモ(メス) <A HREF=duck.jpeg><IMG SRC=duck-s.jpeg ALT="photo of duck" ALIGN=MIDDLE></A>カモ(メス) <A HREF=duck.jpeg><IMG SRC=duck-s.jpeg ALT="photo of duck" ALIGN=BOTTOM></A>カモ(メス)<BR>3行目以外は行の最後の <BR> タグを取り除いている点に注意。
<A HREF=duck.jpeg><IMG SRC=duck-s.jpeg ALT="photo of duck" ALIGN=RIGHT></A>カモ(メス)<BR>
画像は画面の右端に移動したはず。
<A HREF=duck.jpeg><IMG SRC=duck-s.jpeg ALT="photo of duck" ALIGN=LEFT></A>カモ(メス)<BR>
一見すると ALIGN=TOP としたのと同じように見えるが、
以下の例を試してみると違いが分かるはず。
<A HREF=duck.jpeg><IMG SRC=duck-s.jpeg ALT="photo of duck" ALIGN=TOP></A>カモ(メス)<BR> 1行<BR> 2行<BR> 3行<BR> 4行<BR> 5行<BR> <HR> <A HREF=duck.jpeg><IMG SRC=duck-s.jpeg ALT="photo of duck" ALIGN=LEFT></A>カモ(メス)<BR> 1行<BR> 2行<BR> 3行<BR> 4行<BR> 5行<BR>ALIGN の値を LEFT にすると(画像の高さが文字の高さより高い場合) 画像の右側の空きスペースが文字で埋められる。 TOP の場合には画像は完全に文字の扱いを受けるので、 画像の右側は空白のままで次の文字行が画像の下に来る。 この事情は ALIGN の値を RIGHT とした場合も同じである (つまり画像の左側の空白は文字で埋められる)。
<A HREF=duck.jpeg><IMG SRC=duck-s.jpeg ALT="photo of duck" ALIGN=MIDDLE></A>カモ(メス) <A HREF=flower.jpeg><IMG SRC=flower-s.jpeg ALT="photo of flower" ALIGN=MIDDLE></A>花(モクレン?) <A HREF=tamamushi.jpeg><IMG SRC=tamamushi-s.jpeg ALT="photo of tamamushi" ALIGN=MIDDLE></A>玉虫(玉虫は玉虫)写真集らしくなっただろうか。
<BODY BACKGROUND=duck-bright.jpeg>
背景用に duck-bright.jpeg
を public_html に保存し photo.html を再表示してみる。
<H2><A HREF="photo/index.html">写真集</A></H2>
<HR>
ご意見ご感想は<A HREF="mailto:sp20nnxx@ecs.cmc.osaka-u.ac.jp">sp20nnxx@ecs.cmc.osaka-u.ac.jp</A>まで
</BODY>
ハイパーテキストの中に表を作成するためのタグも用意されているので見てみる。
簡単な表
<HTML>
<HEAD>
<TITLE>List of tags</TITLE>
</HEAD>
<BODY>
<DIV ALIGN=CENTER>
<H2>タグのまとめ</H2>
</DIV>
<TABLE>
<TR>
<TD>タグの名前</TD><TD>タグの効果</TD>
</TR>
<TR>
<TD>A</TD><TD>リンクを張る</TD>
</TR>
<TR>
<TD>BODY</TD><TD>ハイパーテキストの表示部分の範囲を示す</TD>
</TR>
<TR>
<TD>BR</TD><TD>強制的に改行を入れる</TD>
</TR>
<TR>
<TD>DIV</TD><TD>任意のブロックを作る</TD>
</TR>
</TABLE>
</BODY>
</HTML>
ちゃんと入力し table.html を Netscape で表示すれば表が出て来るはず。
<TABLE BORDER=1>
BORDER の値は0以上の整数とすれば良い。
数字が大きいほど太い罫線となる。
<DIV ALIGN=CENTER> <TABLE BORDER=1> <TR> <TD>タグの名前</TD><TD>タグの効果</TD> </TR> <TR> <TD>A</TD><TD>リンクを張る</TD> </TR> <TR> <TD>BODY</TD><TD>ハイパーテキストの表示部分の範囲を示す</TD> </TR> <TR> <TD>BR</TD><TD>強制的に改行を入れる</TD> </TR> <TR> <TD>DIV</TD><TD>任意のブロックを作る</TD> </TR> </TABLE> </DIV>
<TR> <TD>タグの名前</TD><TD>タグの効果</TD> <TD>終了タグ</TD><TD>ブロック/文字 レベル</TD> </TR> <TR> <TD>A</TD><TD>リンクを張る</TD> <TD></TD><TD>文字レベル</TD> </TR> <TR> <TD>BODY</TD><TD>ハイパーテキストの表示部分の範囲を示す</TD> <TD></TD><TD>ブロックレベル</TD> </TR> <TR> <TD>BR</TD><TD>強制的に改行を入れる</TD> <TD>無し</TD><TD>ブロックレベル</TD> </TR> <TR> <TD>DIV</TD><TD>任意のブロックを作る</TD> <TD></TD><TD>ブロックレベル</TD> </TR>ここで見て分かるように、TABLE などのタグ中でも見かけ上の改行は無視される。 上の例では、HTMLファイルを編集する際に、 タグの入れ方が分かりやすいよう、改行と行下げを行なっている。 また TD タグの中身は空でも良い(上の例では表の3列目)。
<DIV ALIGN=CENTER>
<TABLE>
<TR>
<TD><A HREF=duck.jpeg><IMG SRC=duck-s.jpeg ALT="photo of duck"></A></TD>
<TD>カモ(メス)</TD>
<TD><A HREF=flower.jpeg><IMG SRC=flower-s.jpeg ALT="photo of flower"></A></TD>
<TD>花(モクレン?)</TD>
</TR>
<TR>
<TD><A HREF=tamamushi.jpeg><IMG SRC=tamamushi-s.jpeg ALT="photo of tamamushi"></A></TD>
<TD>玉虫(玉虫は玉虫)</TD>
</TR>
</TABLE>
</DIV>
元々あった IMG タグの ALIGN 属性は必要無いので消去している。
写真と説明の組が2組横に並ぶように4列の表とした。
文字の中に埋め込むのに比べ写真などのレイアウトの統一がとりやすくなる。
前回と今回で取り上げたタグはHTMLで使用できるタグの極く一部分のみである。 また使用したタグの属性も極く一部の属性しか設定していない。 市販されている解説書などを一度は読むことを勧める。
特に「スタイルシート」に付いては時間が限られているため触れなかった。 今回使ったタグの属性の一部は、 現在はスタイルシートを用いて設定することが推奨されている。
この授業では出来るだけHTML言語の文法に馴染みやすいよう、 最も簡単な書式のHTMLファイルのみを扱った。 簡単化のために省略したことに付いてここで少し触れる。
HTML文書の正式な書式に付いて<!DOCTYPE HTML PUBLIC "-//W3C/DTD HTML 4.01 Transitional//EN">通常ブラウザはURLで指定されたファイルの名前の最後が「.html」 あるいは「.htm」であるとHTMLで書かれたハイパーテキストとして処理する。 しかし正式には、この DOCTYPE 宣言にて、 そのファイルがどういう言語にて書かれているかが判断される。