■テーブルについて
テーブル、つまり表のことです。インターネットではテーブルの Tips からやさしい使い方までいろいろ公開されています。よくわからないときはそちらをご覧ください。


Top
テーブルの枠の調整

文中のieはインターネットエクスプローラを、nsはネットスケープを示します。
古いブラウザでしかサポートされていないもの、マイナーなものは除外しました。
テーブルの枠の属性は TABLE タグのなかで指定できます。
数値や色の指定には、指定値を " "でくくったほうが無難です。

TABLE タグの中で使う代表的な指定
WIDTH=(数字・%) 表全体の幅の指定 (例:WIDTH="50" または WIDTH="60%")
HEIGHT=(数字・%) 表全体の高さの指定 (例:HEIGHT="50" または HEIGHT="60%")
ALIGN=(left,right,center) 表と、そのまわりのテキストのまわりこみを指定しますが、実際にやると変な具合に隠れたりかぶさったりしますので、TABLE 部分のオプションでは使わないほうがよいでしょう
BORDER=(数字) 表の枠線そのものの高さの指定。 BORDER="0" で高さがゼロになり、枠が消えます(標準はこの状態)
CELLSPACING=(数字) 表の枠線そのものの幅の指定 例:CELLSPACING="4"
CELLPADDING=(数字) 表の枠と中身の間の余白の指定 例:CELLPADDING="4"
BGCOLOR=(色) 表の色の指定
これもブラウザによって表示が異なります。nsでは枠に色がつきません

 BGCOLOR=RED(ie4)  BGCOLOR=RED(ns4) 
BORDERCOLOR=(色) 表の枠線の色の指定。枠の輪郭全体の色の指定です。 ieとnsでは見え方が違いますので注意。

ie4 の場合   ns4 の場合

いずれも BORDERCOLOR=RED 指定ですが、nsの場合は範囲も違えば出る色も赤+ライトグレーの混色になっています
BORDERCOLORDARK=(色) ie3以上のみ 表の影の部分の枠線の色の指定。ieのみ。nsでは変化なし。
 BORDERCOLORDARK=RED
BORDERCOLORLIGHT=(色) ie3以上のみ 表の明るい部分の枠線の色の指定。ieのみ。nsでは変化なし。
 BORDERCOLORLIGHT=BLUE
BACKGROUND=(イメージURL) 表の背景イメージの指定です
ie3以上、ns4以上が対応しますが、これもブラウザによって表示が異なります。別項目で説明します。


TR タグの中で使う代表的な指定
ALIGN=(left,right,center) 表の項目の左右の表示位置を指定します。
VALIGN=(top,middle,bottom) 表の項目の上下の表示位置を指定します。
BGCOLOR=(色) 表ヨコ一列の色の指定です。このオプションは両ブラウザとも見えかたが共通です。 TABLE タグでの指定より優先しますが、TD で色指定されているとそちらのほうが優先されます


TD タグの中で使う代表的な指定
WIDTH=(数字・%) 表全体の幅の指定 (例:WIDTH="50" または WIDTH="60%")
TD だけで width= 指定をすると、思うようなレイアウトにならないことがあります。そのときは TABLE タグにも width= を指定しましょう。
HEIGHT=(数字・%) 表全体の高さの指定 (例:HEIGHT="50" または HEIGHT="60%")
ALIGN=(left,right,center) 表の項目の左右の表示位置を指定します。
VALIGN=(top,middle,bottom) 表の項目の上下の表示位置を指定します。
COLSPAN=(横項目数) 表のヨコ方向の項目を連結し、ひとつの項目として扱います
ROWSPAN=(タテの段数) 表のタテ方向の項目を連結し、ひとつの項目として扱います
NOWRAP 内容が自動的に改行されるのを防ぎます
ie3では未対応なので、デザインが崩れる場合があります
BACKGROUND=(イメージURL) 表の背景イメージの指定です
ie3以上、ns4以上が対応しますが、これもブラウザによって表示が異なります。別項目で説明します。


Top
テーブルの背景に画像を使うとき

ie4、ns4からテーブルのなかに背景イメージを貼れるようになりました。
しかしこれまたお約束のように、両ブラウザで見え方が異なりますので注意が必要です。

両者の違いがいちばんよくわかるのは、「テーブルの中にテーブルを入れ、背景イメージを指定したとき」でしょう。

ie4 の場合   ns4 の場合

上のサンプルは、テーブル1にだけ背景を貼り、テーブル2の背景色を白に指定しています。
ie4ではねらった通りに表示されますが、ns4ではうまくゆきません。背景色の指定が無視されてしまいます。


ie4 の場合   ns4 の場合

今度は別の背景を貼ってみましょう。
すると、nsでは背景色が無視されるだけではなく、入れ子のテーブルの中にまで左端から背景イメージが貼られてしまうことがわかります。これはデザインを考える上で非常に困った仕様です。

■このバグの回避法

まず適当なサイズの単色の GIF ファイルを用意し、その色そのもので透過処理しておきます。つまり背景に貼っても透けるだけで何の変化もないような素材を用意するわけです。

次にそのイメージを 内側のTable 2 の背景イメージに指定します。こうすることでnsでも Table 2 にこのイメージが使われますが、透明化されているために BGCOLOR= で指定してある背景色だけが表示され、結果としてie4で見るデザインと同じものが表示されます。下は実際に表示させているものですが、うまく見えているでしょうか?(見えるのはテーブルの背景イメージに対応したブラウザのみです)

Table 1
Table 2
 ns3ではテーブルの背景は表示されません。


この html のサンプルソース

<TABLE background="bg02.gif" width="116" height="100" border="1" cellspacing="2" cellpadding="4">
<TR>
<TD>
<B>Table 1</B><BR>
   <TABLE background="dummy.gif" width="100" height="100" border="1" cellspacing="2" cellpadding="4">
   <TR>
   <TD bgcolor="#FFFFFF">
   <B>Table 2</B>

   </TD>
   </TR>
   </TABLE>

</TD>
</TR>
</TABLE>


Top

テーブル項目のアレンジ・行と列の連結

たいていの参考書に書いてありますが、項目のアレンジの方法です。

ごく普通にテーブルを書けば、下のように均等な区分けになります。

見出し
見出し 項目1 項目2
見出し 項目1 項目2
項目1 項目2

次はテーブルの項目をタテ・ヨコに連結させた例です。

タイトル (COLSPAN="3")
見出し1 項目1 項目2
見出し2

(ROWSPAN="2")
項目1 項目2
項目1 項目2

ヨコの項目を連結させるには COLSPAN=(連結する数) を、タテの項目を連結させるには ROWSPAN=(連結する数) を <TD> のなかで指定します。

上の例では、グリーンの部分の横3つをつなげて一つにしますので、グリーン部分の最初の<TD> に COLSPAN="3" を指定し、これにより一番左の項目が横に3つ分伸びますので残りの▲部分の <TD>〜</TD> は削除します。

そして黄色の部分はタテ2つを連結するので、黄色の最初の <TD> に ROWSPAN="2" を指定し、そのすぐ下の ▲部分にあたる <TD>〜</TD> は削除します。


これのソースを下に示します。緑文字はコメントですので、実際には書きません。

<TABLE border="1">
<TR bgcolor="#99CC99" align="CENTER">
↓グレー部分。ここは3連結なので TD ひとつに COLSPAN 指定↓
<TD colspan="3">タイトル </TD>
</TR>

↓2段目。普通の項目が3つ↓
<TR>
<TD>見出し1</TD>
<TD>項目1</TD>
<TD>項目2</TD>
</TR>

<TR>
↓黄色部分1。最初の項目に ROWSPAN でタテに連結指定↓
<TD BGCOLOR="#ffcc00" rowspan="2">見出し2</TD><TD>項目1</TD><TD>項目2</TD></TR>
<TR>
↓黄色部分2。最初の位置に上から伸びた TD が来るので、項目はふたつだけ指定↓
(ここに上から伸びた TD がくる)<TD>項目1</TD><TD>項目2</TD></TR>
</TABLE>



Top

テーブルを画面いっぱいにセットしたい!
ほとんどのブラウザでは、 <TABLE width="100%"> としても幅いっぱいにくっついてくれません。これはまあ仕様ということです。

これをぴったりにレイアウトするには、 BODY タグに次のオプションを指定します。


<BODY TOPMARGIN="0" LEFTMARGIN="0" MARGINHEIGHT="0" MARGINWIDTH="0">

TOPMARGIN と MARGINHEIGHT はieとネットスケープ4それぞれ向けの指定です。同時に指定してください。これで上下左右ぴったりに表示されますが、古いブラウザでは無視されます。



Top


テーブル2へ


copyright(C) 1999 Y.Kishino all rights reserved
Ushikai and Icons Room