フレーム <frame>
フレームは1つのページに複数のHTML文書を表示させる機能です。各HTML文書はフレームセルと呼ばれ、読者はWindowsのエクスプローラと同じ要領でフレームセルのサイズを変更したりスクロールすることができます。各セルはname属性でフレームセル名(ウィンドウ名)を指定でき、他の文書からそのフレームへのリンクが可能です。それらのフレームは<frameset>タグを使って作成し、通常のHTML文書の<body>タグと同じような役目を果たします。2つのフレームを作成する場合、記述方法は以下のとおりです。
<html> <head> ヘッダ部 </head> <frameset> フレーム1 </frameset> <framweset> フレーム2 </frameset> </html>また、<frame>タグを使って1つのフレームセットの中へ複数のフレームセルを作成できます。フレーム関連タグ
<frameset>
- <frameset>タグはフレームの初期サイズを決める2つの属性、rowsとcolsを持ちます。フレーム文書にはbodyタグがなく、framesetをその代わりと考えればいいでしょう。このframesetは入れ子にでき、noresize属性を指定しない限り、読者がフレームサイズを変更することも可能です。
- 横列の高さ(rows)
- rows属性でフレームの高さを指定する場合、複数のセルフレームがあれば各フレームをピクセル値か文書を全体のパーセンテージで指定し、カンマで分けます。たとえば、以下は3つの列を指定した記述例です。
<frameset rows="20%,60%,20%">- 縦列の幅(cols)
- cols属性でフレームの幅を指定する場合も、要領はrows属性とまったく変わりません。
- フレームの境界線(frameborder)
- 「frameborder=yes | no」で、フレームの境界線を設けるか設けないかを指定します。
- 境界線の幅(border)
- フレームの境界線幅を指定し、入れ子にしたフレームは親フレームのborderを継承します。子フレームのborderへ親フレームと違う値を指定しても、効果がありません。
- 境界線の色(bordercolor)
- フレームの境界線の色を指定します。
<frame>
- これはフレームセルを作るタグでsrc、name、marginwidth、marginheight、scrolling、noresizeの6つの属性を持ち、imgタグ同様、終了タグを持ちません。
- URL(src)
- src属性は表示する書類のURLを指定します。FRAMEにSRC属性がない場合、枠だけ表示されます。
- ウィンドウ名(name)
- name属性はターゲット・ウィンドウ機能を使用する際に用いるウィンドウ名を定義します。
- フレーム左右のマージン(marginwidth)
- marginwidth属性はフレーム左右のマージンを制御する際に用い、1より大きなピクセル値で指定します。
- フレーム上下のマージン(marginheight)
- marginheight属性は上下のマージンを指定します。
- スクロールバー(scrolling)
- 「scrolling=yes | no | auto」でスクロールバーを付けるかどうかを指定します。yesは常にスクロールバーを表示し、noは表示しません。そして、autoはブラウザがスクロールバーを必要かどうかを判断します。scrollingを指定しなければautoとなります。
- サイズの変更(noresize)
- noresize属性を指定すれば、ユーザはフレームサイズの変更ができなくなります。
以上を使って次のようなフレームを作成する場合、
HTMLソースはこのように記述します。
<frameset cols="58%,42%"> <frameset rows="50%,50%"> <frame src="frame1.html"> <frame src="frame2.html"> </farameset> <frameset rows="28%,40%,32%"> <frame src="frame3.html"> <frame src="frame4.html"> <frame src="frame5.html"> </frameset> </frameset>この基本構造へ少し味付けをしたのが次の実例です。
<noframes>
<noframes>タグはフレームをサポートしていないブラウザのために使用され、開始タグと終了タグを持ちます。これらのタグの間へフレーム機能を持たないブラウザ向けのデータを挿入すると、それらのブラウザで表示した場合、フレームタグは無視され、<noframes>タグ内のテキストが表示されます。逆にフレームタグをサポートするブラウザでは<noframes>タグの内容が表示されません。<frameset cols="58%,42%"> <noframes> <h1 align=center><blink>警 告</blink></h1><p> これは「フレーム」を使って表示するようにデザインされたページです。もし、 この警告が表示されているとすれば、あなたのブラウザは「フレーム」の機能 を備えていません。新しいブラウザをインストールされるようお薦めします。 </noframes> <frameset rows="50%,50%"> <frame src="frame1.html"> <frame src="frame2.html"> </farameset> <frameset rows="28%,40%,32%"> <frame src="frame3.html"> <frame src="frame4.html"> <frame src="frame5.html"> </frameset> </frameset>