| 2006年08月13日 |
幅固定テーブルなのに自動改行(折り返し)されずに、幅が広がる問題について
幅を固定してテーブルのセルに半角英数字を連続して入れると、自動改行(折り返す)されずにwidth幅以上にテーブル幅が広がってしまうという問題がある。
これの原因は、空白文字を含まない長い半角英数字はひとつの英単語と見なされるのか、自動折り返しがされない。日本語などとちがい英語などはスペースがないとどこで改行していいのかわからないためと思われる。そのような具体例としては、長いURLや、aaaaaaaaaaaaaaaaaaaなどなど。
いわゆる「カラム落ち」を防ぐには
教えて!goo : 質問:<table>の幅の設定のことでの疑問
テーブルのセルに半角英数字のみを入れたときも改行するには?
対策としては、IE5.5以上なら<table>→<table style="word-break:break-all;">で、幅固定で強制的に改行できる。ただし、FireFoxなどは相変わらず自動改行されないまま。FireFoxなどでも自動改行するなら、php側で、半角英数字が何文字連続すれば<br>タグを入れるなどの処理をいれれば可能。
以下は、「幅固定テーブルなのに自動改行(折り返し)されずに、幅が広がる問題について」の関連エントリーです。
この記事を読んだ人はこんな記事も読んでいます
- 一人息子 (レビュー・感想・解説) (476 hits)
- YAHOO!検索ワードランキング (48 hits)
- 二重投稿を防ぐための方法の1つ (7 hits)
- MySQL (6 hits)
- 「checkdate() expects parameter 1 to be long, string given in 」というエラーメッセージについて (5 hits)
- リクルートがWEBサービス用UIライブラリをだしてた。 (3 hits)
- 過不足がある『グーグル―Google 既存のビジネスを破壊する』を読む (2 hits)
- 闇金ウシジマくん (2 hits)
- ブロードバンドコンテンツ配信実践制作ガイド (2 hits)
- 初心者が必要なゴルフ用品 (2 hits)