• ベストアンサー

<TABLE>の<TD>タグの幅指定について

<FORM>を2つに切って、その表示がずれてしまうという記事が少し前にありましたが、多少内容がかぶるかもしれません。 列項目が全く同じ2つの表を上下に並べて表示しようと思っています。 <TABLE>タグはWIDTHの指定ができるので表全体のサイズは上下でそろっているのですが、その中の項目の縦の線がずれてしまいます。 原因はその項目に表示される内容が上の表と下の表とで異なっていることによるズレのようです。 (<TD>のタグにはwidthの指定が無く、<TABLE>全体として、バランスが取れるように自動的に中の項目幅を調整してしまうためらしいです(--; ) 何か画期的な裏技がありましたら、教えてください。 お願いします。

  • HTML
  • 回答数2
  • ありがとう数2

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

  • ベストアンサー
回答No.2

<td>の属性で、width="500" のような指定も出来ますが、そうやってきっちりと幅指定をしても、ブラウザが勝手にレイアウトを変更してしまうこともよくあります。これを防ぐには、透明な1pixelのgifを利用する方法が有効です。 (HTML4.01では、本来推奨されていないアプローチのようですが。) たとえば、 <table width="100"> <tr><td width="50">abc</td><td width="50">ABC</td></tr> <tr><td width="50">abcdefg</td><td width="50">AB</td></tr> </table> としたが、意図した表示と異なる場合には、 <table width="100"> <tr height="1"><td width="50"><img src="clear.gif" width="50" height="1"></td><td width="50"><img src="clear.gif" width="50" height="1"></td></tr> <tr><td width="50">abc</td><td width="50">ABC</td></tr> <tr><td width="50">abcde</td><td width="50">AB</td></tr> </table> のようにすることで、理不尽なレイアウトになることを防ぐことができます。

hidekino
質問者

お礼

イメージタグによる幅指定はテーブルの持つそれよりも強力なようですね。参考にさせていただきます。

その他の回答 (1)

  • callhiro
  • ベストアンサー率35% (54/152)
回答No.1

<TD>タグにもwidthの指定ができますので <table width=100% border=1> <tr> <td width=50%>一つ目</td> <td>二つ目</td> </tr> </table> の様に記述すれば、一つ目と二つ目の列幅が同じになりますよ。 <td>タグの中の50%は、テーブル幅の中のパーセント分かを示します。 やってみてくださいな。

hidekino
質問者

お礼

一昔前には確かにwidthタグはあったんですけどね。 なぜか最近のHTMLタグ辞典を見るとないんですよー。 規格から外れたのでしょうか?

関連するQ&A

  • <table>タグについて

    以前同じような質問をさせていただいたのですが、以前質問した逆の内容が わからないので質問させていただきます。 以前の質問では<table>タグを使用して表を同じ高さに表示させるという 質問をさせていただきました。 【回答】 <table><tr> <td><table>******</table></td> <td><table>******</table></td> </tr></table> という回答をいただきました。(ありがとうございました。) 今度は逆に表を上下に表示したいと考えたのですが、どうしても 同じ高さに表示してしまいます。(っていうか普通に<table>タグを 書けば上下に表示するとおもうのですが・・・) おそらくタグを閉じたりするタイミングがおかしいかと思われますが、 その他ご存知の事がありましたら宜しくお願いいたします。 <table>タグのclassオプションを同じ名前にすると問題でもあるのでしょうか? ご多忙の中、大変申し訳ありませんが、ご回答宜しくお願いいたします。

    • ベストアンサー
    • HTML
  • 半角だけだとtableタグのwidth指定が無効になってしまう。

    半角だけだとtableタグのwidth指定が無効になってしまいます。半角を入力した際にwidth指定を有効にする方法をご教授お願いします。 <TABLE border="1" width="110"> <TBODY> <TR width="110"> <TD width="110">0123456789012345678901234567890123456789</TD> </TR> </TBODY> </TABLE> <BR> <TABLE border="1" width="110"> <TBODY> <TR width="110"> <TD width="110">0123456789012345678901234567890123456789012345678901234567890</TD> </TR> </TBODY> </TABLE>

    • ベストアンサー
    • HTML
  • ●○■□などの文字を含んだ<td>の幅指定について

    Firefoxで表示確認をしています。 <table border="1" width="100"> <tr> <td>あああああああああああ</td> </tr> </table> だと、幅100pxの位置で自動的に改行されるのですが、 <table border="1" width="100"> <tr> <td>●●●●●●●●●●●</td> </tr> </table> だと改行ず、幅がオーバーしてしまいます。●以外にも○■□などでも同じでした。 ●を使いつつ、指定した幅で改行させることはできないでしょうか?

  • HTMLのtableタグでセル毎の幅率を指定したい

    HTMLにtableタグがあると思いますが、 例えば <table> <tr> <td></td> <td></td> </tr> </table> のように左右にセルがあるだけの単純な表を作ったとします。 この場合100ピクセルの幅にして左が70ピクセル、右が30ピクセルみたいに 個々の列で幅の比率を指定したりはできるのでしょうか?

    • ベストアンサー
    • HTML
  • tdタグに何も入れなくとも幅を均一にする方法

    <table border = "1"> <tr> <th>hoge</th> <td></td> </tr> </table> 上記のような場合、<td>タグ内には何も書かれてないので セルがつぶされた形で表示されますよね? これを<th>タグ内のhogeと同じセルの幅で表示するにはどうすればいいですか? style属性にwidth:100pxとかしてみたのですが無駄でした‥

    • ベストアンサー
    • HTML
  • TABLEタグの幅指定

    テーブルの幅を厳密に指定したいのですが、 例えば以下のような1行2列のテーブルがあるとき、 <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0> <TR> <TD WIDTH=100>***</TD> <TD WIDTH=100>***</TD> </TR> </TABLE> このような場合にテーブルタグにWIDTH属性を加えるとすると、 100*2+4*4+1*3=219で、WIDTH=219が正確な値なのでしょうか? よろしくお願いします。

  • widthを指定しない<td>が幅をシェアする基準?

    <table>タグの表示不安定につき、ご教示ください。 aaaa.txtに蓄積したデータをCGIで切り分けて、下記の<table>タグ内に割り付けて 表示させています。 <table width=510> <tr><th>左列の表題</th> <th>右列の表題</th></tr> <tr><td>改行タグを含む文字列A1</td> <td>改行タグを含む文字列B1</td></tr> <tr><td>同様のA2</td><td>同様のB2</td></tr> <tr><td>同様のA3</td><td>同様のB3</td></tr> <!--このtrを繰返し--> </table> 表幅を絶対指定したのは、印刷時に 510 px / 72 dpi * 2.54 cm = 18 cmで、 A4の幅に納まりやすいだろうという意図です。文字列AとBは、それぞれ <br>で区切ってありますが、区切りは概ね1行分(はみだせば折り返し)です。 <td>の幅を指定しなかったのは、<br>までの長さに応じて表示幅をシェアさせ、 折り返し頻度を減らすこと(印刷時の縦長の節約)が目的です。 IE5/Win&Mac及びNN4.7/Win&Macで、td内の1行長を無視した割付けが しばしば生じ、その割付け方の法則がわかりません。小細工を諦めて、列幅を 50%ずつに指定してしまおうかとも思っていますが、ブラウザは何を基準に 列幅を割り付けているのでしょう? 要領を得ない状況説明で恐縮ですが、追加説明は補足要求でご指示ください。

  • アメブロhtmlのタグの使用

    アメブロを利用してますが、htmlのタグで表を作成しました 表は作成出来たのですが、タグ利用部分が記事の上下の真ん中になってしまいます(画像参照) どの様にしたら上詰めに表示されるのでしょうか? テーマはカスタマイズテーマで全てデフォルトで使用してます。 (記事内容) <table border="3" width="100%"> <tr> <td height="100">指定なし</td> <td align="left">左寄せ</td> <td align="center">中央揃え</td> <td align="right">右寄せ</td> </tr> </table>

  • テーブル幅を完全に指定したい

    テーブル幅の指定方法を教えてください。 以下のような記述のテーブルを何列も羅列して 表を作ろうと思っています。 alt="小A"~alt="小D" のところは 項目ごとのアイコン画像が入り、その項目に該当するものが無い場合は空白となるような表です。 実際にブラウザで表示してみると、widthの設定はしているのに、空白をつくると 若干ですが横幅が変わってしまい、表として並べたときにそのズレが目立ちます。 何がいけないのか、お知恵を拝借できませんでしょうか。 宜しくお願い致します。 以下、その表の一部である テーブルになります。 <table bordercolor="#ffffff" width="520" height="80" align="center" cellspacing="3"> <tr><td bgcolor="#ffcccc"> <table> <tr> <td width="100" bgcolor="#ffcccc" align="center" valign="middle"> <a href="★" target="_blank"><img src="■.gif" width="80" height="60" border="0" class="pict"/></a> </td> <td width="260" align="left" valign="center"> あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよ </td> <td valign="center"> <img alt="中" src="■.gif" width="80" height="60" class="pict" /> </td> <td width="25"><a href="★" target="_blank"><img alt="小A" src="■.gif" width="25" height="60" class="pict" /></a></td> <td width="25"><a href="★" target="_blank"><img alt="小B" src="■.gif" width="25" height="60" class="pict" /></a></td> <td width="25"><a href="★" target="_blank"><img alt="小C" src="■.gif" width="25" height="60" class="pict" /></a></td> <td width="25"><a href="★" target="_blank"><img alt="小D" src="■.gif" width="25" height="60" class="pict" /></a></a></td> </tr> </table></td></tr></table>

    • ベストアンサー
    • HTML
  • css で指定した div と table の幅が

    html と css の勉強中です。 スタイルシートで次のように同じ幅を 指定したのですが、表とブロックの幅が 揃いません。 <style><!-- #a {width:300px;border:solid 2px} #b {width:300px;border:solid 2px} --></style> <div id="a"> <p> a b c d </p> </div> <table id="b" border="1"> <tr> <td>a</td><td>b</td><td>c</td><td>d</td> </tr> </table> ブラウザは IE6と opera で見てみました。 お願いします。

    • ベストアンサー
    • CSS