• ベストアンサー

ネットスケープ6.2のテーブル表示なんですが。

ネットスケープ6.2で、英数字をテーブルで囲うと改行せずに、テーブル自体がのびて、おかしくなってしまいます・・・テーブルのwidthは指定してあるのですが。指定したwidthで英数字を改行させ、表示させる方法を知っている方、よろしくお願いします!

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

  • ベストアンサー
noname#199778
noname#199778
回答No.1

半角英数字の場合、途中にハイフンやスペースが入らない限りはそれは一単語として扱われ、途中で改行ができない仕様になっていると思います。 この場合は、横幅の指定が行われていても、その指定が無視されて改行できない文字列の幅に合わせて枠が横に伸張されます。 このケースなのではないでしょうか。 これを回避するには、単語の適切な部分にハイフンを入れるなどをする必要があると思います。 ハイフンを入れれば、単語の途中でも、その部分で改行が可能になります。 数値の場合は、表記方法を変える(漢数字表記など)必要があると思います。 あるいは、全角英数字で表記するという方法もありますが、内容によってはかえって読みにくくなるかも知れません。 HTMLの方でこれを制御するのは無理と思いますよ。 上記の方法は取れないが、テーブルの幅をどうしても指定したとおりの幅で確保したいというのであれば、セルの内容にスタイルシートで横幅を指定したボックスを置き、overflowのプロパティをscrollにすれば、一応は可能でしょうが、この場合、一部分は隠れてしまいますし、その部分の表示を見るのにスクロールバーを操作しなければならないので、かえって不便になるでしょう。 このケースであれば、テーブルのレイアウトを見直して、横幅などを適切に指定してやるのが最良の解決法になるのではないでしょうか。 見当違いでしたら、ごめんなさい。 参考になれば幸いです。

tsuyudaku
質問者

お礼

早い回答ありがとうございました!ハイフンを入れると回避できるというのは知りませんでした。 参考になりました。もう一度最初から、レイアウト考え直してみます。有り難うございました。

その他の回答 (1)

noname#107580
noname#107580
回答No.2

こんにちは! <td width="***"> 12345689<wbr>0<wbr>2<wbr>3<wbr>4<wbr>8<wbr>9<wbr>4 <wbr>3<wbr>4<wbr>5<wbr>9<wbr>0<wbr>1<wbr>4<wbr>32953 </td> こんな感じで改行候補<wbr>を入れるとその候補の中から改行してくれます。 面倒でなければサンプルのように一文字ずつ<wbr>を入れることで対応できます。 当然セルのサイズによって最初のほうは必要ないですのでブラウザでプレビューして文字を大きくしたり小さくしたりして改行の可能性のあるところに入れると良いと思います。 スペースや<br>での改行は見る側が文字サイズを変えていると崩れてしまいます。 *無責任ですが環境がないため確認はNN4.7と7でしかしていません・・m(_ _)m

tsuyudaku
質問者

お礼

詳しい説明有り難うございました!<wbr>を使うことは初めて知りました。

関連するQ&A

専門家に質問してみよう