• ベストアンサー

テーブル内のテーブルの高さを揃えたい。

CGIの表示部分を改造中です。 下のソースをhtmlファイルにして見てもらったら判ると思うのですが、 <TABLE border="0"> <COL span="4" width="50"> <TR> <TD valign="top"> <TABLE border="0" cellpadding="0" cellspacing="1" bgcolor="#cccccc" height="100%"> <TR> <TD bgcolor="#ffffff">こんな風に</TD> </TR> </TABLE> </TD> <TD valign="top"> <TABLE border="0" cellpadding="0" cellspacing="1" bgcolor="#cccccc" height="100%"> <TR> <TD bgcolor="#ffffff">枠を置いたときに</TD> </TR> </TABLE> </TD> <TD valign="top"> <TABLE border="0" cellpadding="0" cellspacing="1" bgcolor="#cccccc" height="100%"> <TR> <TD bgcolor="#ffffff">100%のサイズ指定しても合わない高さを</TD> </TR> </TABLE> </TD> <TD valign="top"> <TABLE border="0" cellpadding="0" cellspacing="1" bgcolor="#cccccc" height="100%"> <TR> <TD bgcolor="#ffffff">ちゃんと揃えて配置したい</TD> </TR> </TABLE> </TD> </TR> </TABLE> 高さを100%にしても広がりませんでした。 どうにかして高さ(下の位置)を揃えることは出来ないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • leap_day
  • ベストアンサー率60% (338/561)
回答No.3

こんにちは 一番上の<table>にheight指定してやってください(^^) <TABLE border="0" height="100"> <COL span="4" width="50"> <TR> <TD valign="top"> <TABLE border="0" cellpadding="0" cellspacing="1" bgcolor="#cccccc" height="100%"> <TR> <TD bgcolor="#ffffff">こんな風に</TD> 以下続く・・・

その他の回答 (4)

noname#56851
noname#56851
回答No.5

一番外側のテーブルに高さ指定をしないと、何に対しての100%かがあいまいになるので揃わないのではないでしょうか。 <TABLE border="2" height="25%"> <COL span="4" width="50"> <TR> <TD valign="top"> <TABLE border="0" cellpadding="0" cellspacing="1" bgcolor="#cccccc" height="100%"> <TR> <TD bgcolor="#ffffff">こんな風に</TD> </TR> </TABLE> </TD> <TD valign="top"> <TABLE border="0" cellpadding="0" cellspacing="1" bgcolor="#cccccc" height="100%"> <TR> <TD bgcolor="#ffffff">枠を置いたときに</TD> </TR> </TABLE> </TD> <TD valign="top"> <TABLE border="0" cellpadding="0" cellspacing="1" bgcolor="#cccccc" height="100%"> <TR> <TD bgcolor="#ffffff">100%のサイズ指定しても合わない高さを</TD> </TR> </TABLE> </TD> <TD valign="top"> <TABLE border="0" cellpadding="0" cellspacing="1" bgcolor="#cccccc" height="100%"> <TR> <TD bgcolor="#ffffff">ちゃんと揃えて配置したい</TD> </TR> </TABLE> </TD> </TR> </TABLE> 外側のボーダーは分かりやすくちと太く表示しときました。

master-3rd
質問者

お礼

ありがとうございました。 外枠に高さ指定することで、ちゃんと設定できました。

  • naokita
  • ベストアンサー率57% (1008/1745)
回答No.4

#1 naokitaです(補足への返信) それならセル枠のborderだけ設定し隙間を開ける。 枠とのスペースだけの為に莫大なtable設定をするよりも、簡潔にtableは1つに統一。 (背景が白の場合は下記の background: #fff は不要) ----------------------------------------- <table cellpadding="0" cellspacing="4"> <tr valign="top"> <td style="width: 48px; border: 1px solid #ccc; background: #fff">こんな風に</td> <td style="width: 48px; border: 1px solid #ccc; background: #fff">枠を置いたときに</td> <td style="width: 48px; border: 1px solid #ccc; background: #fff">100%のサイズ指定しても合わない高さを</td> <td style="width: 48px; border: 1px solid #ccc; background: #fff">ちゃんと揃えて配置したい</td> </tr> </table> ------------------------------------------ CSSでtd指定もしくはクラス指定するともっと短縮。 td { width: 48px; border: 1px solid #ccc; background: #fff }

  • maura
  • ベストアンサー率46% (48/104)
回答No.2

<style> TD{ height=100%;} </style>

master-3rd
質問者

補足

返答ありがとうございます。 しかし、変化無しです。 他の方法はありませんか?

  • naokita
  • ベストアンサー率57% (1008/1745)
回答No.1

単純にこんな感じですか?(意味が違ったら申し訳ない) <TABLE cellpadding="1" cellspacing="1" bgcolor="#cccccc"> <TR bgcolor="#ffffff" valign="top"> <TD width="50">こんな風に</TD> <TD width="50">枠を置いたときに</TD> <TD width="50">100%のサイズ指定しても合わない高さを</TD> <TD width="50">ちゃんと揃えて配置したい</TD> </TR> </TABLE>

master-3rd
質問者

補足

すみません。ちょっと意味が違います。 テーブルの中にさらにテーブルを入れる必要があります。 その内側のテーブルの高さを指定したいです。 テーブルの中にテーブルとした理由は、枠と枠の間の空白が必要だったからです。 他の方法があればお願いします。

関連するQ&A