9.いろいろなテクニックを学ぶ(その2)

【表を作る】

@基本的な表(テーブル)の作り方

テーブルを作るには、<TABLE>〜</TABLE>タグを用い、 その中に各行を<TR>〜</TR>で表し、さらに各列を <TD>〜</TD>で記述します。
<TABLE>タグには、テーブル全体のサイズを指定するwidth及びheight、外枠の太さを決める border、表のなかの各項目を区切る枠線のサイズを指定するcellspacing、各項目で枠線とテキストの 間の余白を指定するcellpadding等の多くの属性があり、必要に応じこれらを指定します。
    <TABLE width="◇" height="◆" border="☆" cellspacing="★" cellpadding="※">

  数値は、いづれもピクセルで指定します。但し、width及びheightは全画面に対する
パーセント(%)でも指定可です。
簡単な2行3列の表を例示します。


 
      <TABLE border="2">
      <TR><TD>1行1列</TD><TD>1行2列</TD><TD>1行3列</TD></TR>
      <TR><TD>2行1列</TD><TD>2行2列</TD><TD>2行3列</TD></TR>
   </TABLE> 

  上のようにソースプログラムを記述すると、ブラウザには次ぎのように表示されます。


   
1行1列1行2列1行3列
2行1列2行2列2行3列


A表枠を合成する―複数行あるいは複数列にわたるセル(表枠)の作成―

  横(行)方向の枠を合成するには、合成を開始するセルの<TD>タグにcolspan="合成する枠の数" を記入します。縦(列)方向の枠を合成するには、合成を開始するセルの<TD>タグにrowspan="合成する枠の数" を記入します。いづれも合成することによって消えるセルの記述は削除します。

  例として、3行3列の9セルある表で、1行目の1列から3列までを合成し、2行目の1列と3行目の1列を合成 することを行なってみましょう。



 
    <TABLE border>
    <TR><TH colspan="3">1行1列</TH></TR>
    <TR><TD rowspan="2">2行1列</TD><TD>2行2列</TD><TD>2行3列</TD></TR>
    <TR><TD>3行2列</TD><TD>3行3列</TD></TR>   
    </TABLE> 

(注)<TH>タグは、<TD>タグと 同様の機能を持っていますが、それ以外にセル内のテキストを中央に揃え、かつ太く表すというテーブルヘッダーとしての役割もします。

  上のようにソースプログラムを記述すると、ブラウザには次ぎのように表示されます。


   
1行1列
2行1列2行2列2行3列
3行2列3行3列



Bテーブルに色彩を施す

<TABLE>、<TR>および<TD>に属性bgcolorを加えることでテーブル全体、特定の行に、あるいは 特定のセルに背景色を付けることが出来ます。


 
      <TABLE bgcolor="#add8e6" border >
      <TR bgcolor="#ffd700"><TH colspan="3" >1行1列</TH></TR>
      <TR><TD rowspan="2" >2行1列</TD><TD>2行2列</TD><TD>2行3列</TD></TR>
      <TR bgcolor="#ffc0cb"><TD>3行2列</TD><TD bgcolor="#ee82ee">3行3列</TD></TR>   
      </TABLE> 

  上の例は、テーブル全体の背景色をライトブルー("#add8e6")にし、第1行目を黄金色("#ffd700")に指定し、第3行を ピンク色("#ffc0cb")とし、更に3行3列をヴァイオレット("#ee82ee")に指定しています。
  このようにソースを記述すると、ブラウザには次のように表示されます。
  
   
1行1列
2行1列2行2列2行3列
3行2列3行3列


(注)<TABLE>タグの背景色の指定は全てのセルに、 <TR>ではその行全体に、<TD>ではそのセル単独に働きます。
そして、上の例からも分かるように <TABLE>の指示よりも<TR>の指示が優先し、<TR>の指示よりも<TD>の指示が優先していることが 理解できますね。


【表の応用(例)】

@画面に余白を設ける
画面の左右に余白を取る機能がある<BLOCKQUOTE>という引用文のタグを学習しましたね。<BODY>を使って
             < BODY leftmargin="☆" topmargin="★">  
                                                  (☆、★は、ピクセル数)   
と記述することで、前後、左右にマージン(余白)を取ることが出来ます。
 しかし、残念なことにこの機能はインターネットエクスプローラには有効ですが、ネットスコープナヴィゲータには ぜんぜん効果がありません。
 そこで<TABLE>タグを使って、例えば、次ぎのように記述すると前後にそれぞれ 5%の、左右にそれぞれ4%のマージンを取ることが出来ます。
              <BODY>
              <TABLE height="90%" width="92%">
                     ( 本 文 )
       </TABLE>
              </BODY>        
A画像・写真などのイメージとそのテキストをバランスよく配置する
ある行に2つのセルを設け、一方に画像を、他方に説明文を貼り付け見栄えのよい画面構成とする。

「例」
     <TABLE>
          <TR><TD>画像1</TD><TD>テキスト1</TD> </TR> 
          <TR><TD>画像2</TD><TD>テキスト2</TD> </TR> 
     </TABLE> 
    
A社製パソコン
大特価、7万5千円
   B社製パソコン
大奉仕品、6万8千円

B各項目に背景色がある定義型リストを作る
「例」
     <TABLE>
          <TR><TD bgcolor="#ff69b4">タイトル</TD></TR> 
          <TR><TD bgcolor="#ffc0cb">項目1  </TD></TR> 
      <TR><TD bgcolor="#90ee90">説明文1</TD></TR> 
          <TR><TD bgcolor="#ffc0cb">項目2  </TD></TR> 
     <TR><TD bgcolor="#90ee90">説明文2</TD></TR>
     <TR><TD bgcolor="#ffc0cb">項目3  </TD></TR> 
      <TR><TD bgcolor="#90ee90">説明文3</TD></TR> 
          </TABLE> 
   
プロフィール
名前/ハンドル名
本名- - -山田 三郎
ハンドル名- -権太為造
出身地/生年月日
滋賀県栗東町で、昭和二十五年三月生まれる
趣味
競馬、囲碁、釣り、美人鑑賞、ジャズ鑑賞
外国旅行、読書、パソコン通信