FireFoxのテキスト自動改行
テキストの自動改行をコントロールするword-breakプロパティ - builder
今回は、テキストの自動改行の処理方法を指定するword-breakプロパティを紹介する。Internet Explorerが独自拡張したプロパティだったが、CSS 3の草案「Text」に採用され、現在ではSafari 3やChromeも対応している。
この記事見て、FireFoxで文字列が上手く自動改行されないこと過去に書いたのを思い出したので主要なブラウザで再度試してみた。
試したコード
<style type="text/css"> .wd{ background:#ccaaaa; display:block; width:260px; white-space:normal; word-break:break-all; } </style> <b>日本語の文章</b> <div class="wd"> こんにちは。今日はいい天気です。ずっと雨続きで、やっといい天気になりました。 </div> <b>英語の文章</b> <div class="wd"> Hello,it is fine today. It had been rainning. but finally, good weather. </div> <b>かなの連続</b> <div class="wd"> あいうえおかきくけこさしすねそたちつてとなにぬねのはひふへほまみむめも </div> <b>全角数字</b> <div class="wd"> 0123456789012345678901234567890123456789 </div> <b>連続した英文</b> <div class="wd"> asdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdf </div> <b>長いURL</b> <div class="wd"> http://builder.japan.zdnet.com/sp/css-firefox-safari/story/0,3800083423,20381014,00.htm </div>
「word-break:break-all」は任意の位置で自動改行を行うというプロパティです。
なお、試した各種ブラウザは 2008/09/29時点での最新バージョンです。
Safariの場合
Operaの場合
まとめ
ブラウザ | かなの連続 | 連続した 全角数字 |
連続した 英字 |
長いURL |
---|---|---|---|---|
IE6 | ○ | ○ | ○ | ○ |
FF2 | ○ | × | × | × |
FF3 | ○ | × | × | △(※1) |
chrome | ○ | ○ | ○ | ○ |
safari | ○ | ○ | ○ | ○ |
opera9.5 | ○ | ○ | × | △(※1) |
(※1)△ … "/"単位での改行となる
FF2は前回調べた限りブラウザの仕様っぽいですが、FireFox3やOperaの場合に逃げる方法はあるのだろうか。。
んー調査不足です。もう少し調べてみます。
冒頭で紹介したZDNetの記事の次の連載に、word-breakのくわしい定義や設定ごとのブラウザの挙動が載ってます。これはWeb屋さん必見かと。
CSS 3におけるテキストの自動改行と禁則処理の定義 - builder