• 締切済み

テーブルの幅

tableのwidth指定についての質問です。 同じレイアウトで複数のhtmlファイルを作るのですが、その中のテーブル及びセルの幅をwidthで固定してあるのにも関わらず、セル内のテキストの長さによって各ファイルごとのテーブルのセルの幅が、IEでの表示で変わってしまいます。 <table width="450" cellspacing="0" cellpadding="2" border="1"> <tr> <th bgcolor="#ffcccc" width="150">aaaaaaaaa</th> <th bgcolor="#ffcccc" width="286">\100,000</th> </tr> <tr> <td colspan="2">ここには商品説明が入ります。ああああああああああああああああああああああああああああああああああああ</td> </tr> </table> 上記のaaaaaaaaaの部分がファイルによって長さが違うのですが、それによってセルの幅が変わってしまいます。 IE6でプレビューすると変わりますが、firefoxでは変わりません。 <th>を<td>に変更すると、幅は固定され変わりません。 IEの場合、thでwidth指定が出来ないのでしょうか。 なぜ変わってしまうのでしょうか?どこかに記述の問題があれば教えていただければありがたく思います。

みんなの回答

  • goldfox
  • ベストアンサー率49% (123/249)
回答No.1

半角英数字の羅列は、一続きだと一単語として認識され、途中で折り返されません。 全角を使うか、適宜空白もしくは記号を使うと折り返されるようになるかと。

tackross
質問者

お礼

回答ありがとうございます。 おっしゃる通り、aaaaaaaaaの部分は半角英数のみです。 よく掲示板なんかでもURLの長い物は折り返されずに、右に永遠に長くなってしまう物とかありましたね。 現在のOKWave(教えてgoo)はURLなど半角英数の長いものは途中で省略して表示されるようになっているみたいですが。(半角英数のみでは未だに右に長くなるようです) ただ今回の場合はaaaaaaaaaの部分は5~9文字で、150pxに対してかなり余裕(空白部分)があるのですが、文字数によってセルの長さが変化してしまいます。前述のようにIE6ではなりますが、Firefoxではなりません。 IEの癖とみたほうがよいのでしょうか。

tackross
質問者

補足

新たな補足として、2行目のテキストを削除(改行されない長さまで)すると、1行目の1列目のセルの長さがファイルごとに変わらなくなりました。 う~ん、不思議です。

関連するQ&A