dポイントプレゼントキャンペーン実施中!

畏れ入ります。
テーブルを作っているのですが奇妙な現象にあっています。

<table border="1" width="100%">
<tr>
<th width="18"></th>
<th width="100"></th>
<th></th>
<th width="100"></th>
</tr>
<tr>
<td rowspan="2"></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td colspan="3">
<!-- ここに たくさんの 文字列を入れると ・・・ -->
</td>
</tr>
</table>

このコメントの部分が無い状態では正常にでていますが、
ここにたくさんの文字列(半角30文字程度でおかしくなります)を投入すると、レイアウトが異常に崩れてしまいます。
文字列は改行してもかまわないのですが
テーブル1行目2行目のセルサイズ(width)がこのように変化してしまうと困るのです。
どのようにしたら良いか(width=100の部分を守らせたい)
教えてください。

A 回答 (2件)

<table border="1" width="100%" style="table-layout: fixed;">


としてみてください。

#1さんのは行末の禁則処理ですので、ブラウザによっては反応しません。
(mozira系は#1さんのでもいけます。)
    • good
    • 0
この回答へのお礼

ああああ!!出来ました!!
ありがとうございます!!

fixed
最初の横一行を読み込んだ時点で、各縦列の幅を決定して表示を開始します。

デフォルトでこうなのかと思い込んでいましたが、違うのですね。

お礼日時:2006/03/02 13:13

スタイルシートで以下のように指定してみてください。


<table border="1" width="100%" style="word-break: break-all;">

この回答への補足

回答ありがとうございます。
早速調べてみました!

break-all
言語に関係なく表示範囲に合わせて改行されます。このため単語の途中で改行されることもあります。


おお、ぴったりだと思ったのですが、だめでした・・・

そもそも半角30文字程度では改行しません。まだ範囲まで行っていません。
なぜレイアウトが狂うのでしょうか・・・

補足日時:2006/03/02 13:08
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!