table内の改行って

[新着] Webテンプレートを仮オープンしました



0   名前: らちょけ : 2005/08/18 18:52
掲示板とかで、table内に長いアルファベットの文字列が登場するときってありますよね。こんな時、自動改行が効かないため、widthで押さえていても、改行されずtableの枠が大きくなります。上手く処理する方法って在りますか。

1   名前: phpinfo() : 2005/08/18 18:52
>table内に長いアルファベットの文字列が登場するときってありますよね。

うーん、どういう意味かイメージがつかめないですね…

>自動改行が効かないため

この場合は、「折り返し」(改行とは別物!)です。

2   名前: Sinryow : 2005/08/18 18:52  [URL
スタイルシートで「word-break:break-all」を指定すればよいと思います。
http://www.tohoho-web.com/css/reference.htm#word-break

3   名前: Pid : 2005/08/18 18:52
> 掲示板とかで、table内に長いアルファベットの文字列が登場する

例えば,長い URI をそのまま載せた場合に,セルが全部それに合わせて広がってしまう,ということでしょうか。

table { table-layout: fixed; }

と,セル幅を固定してみるとか。

※これは table の自動表組みアルゴリズムに関わる問題でもあります。「だから,表でないものを表としてマークアップするのは避けるべきなんだ」と強弁してみたり(普通に p などでマークアップしておけば,はみ出すだけで他には影響しないとか,そこだけスクロールバーを出すとか,柔軟に対処できますし)。

また,ブラウザによっては長い英数字でも :,/,-,? など区切りっぽい文字で折り返してくれます。

>>2
それは IE 独自ですね。

一覧へ戻る