5

IE9のバグのこの小さな宝石を発見しました。IE9は、ピリオドの前のスペースをブレー​​クポイントとして認識していないようです。ドメインまたはファイル拡張子のリストのように。IE9で次のフィドルを開きます。

http://jsfiddle.net/cssguru/nNnzM/1/

エスケープ文字を使用してみましたが、役に立ちませんでした。回避策に関する提案はありますか?

4

2 に答える 2

6

これは厄介な機能ですが、おそらく意図的なものであり、ベンダーによってバグとは見なされていません。代わりに、 Unicodeの改行ルール(部分的にはかなり奇妙です)を実装していると見なされます。これらの規則によれば、ピリオド(またはピリオドと呼ばれる場合は終止符)には、改行クラスIS、中置数字区切り文字があり、「数字コンテキストで使用されない場合、中置区切り文字は文末の句読点です。したがって、彼らは常に前に休憩を防ぎます。」</ p>

このような問題に対処するには、通常のスペースとピリオドの間にU + 200B ZEROWIDTHSPACEを挿入するのがおそらく今日では最善です。

.web &#x200b;.shop &#x200b;.blog &#x200b;.nyc ...

U + 200Bは、他の方法では許可されない場所での改行を許可する制御文字です。

古いIEバージョン(IE 6)では、これに問題があり、U+200Bの代わりに表現できない文字の記号が表示される場合があります。別の方法である<wbr>タグにはこの問題はありませんが、IE 8以降では、この古くからのタグを尊重できないことがよくあります(おそらく、その有用性にもかかわらず、標準に到達しなかったためです)。

于 2012-09-11T20:10:12.680 に答える
0

このアップデートでワードラップの宣言をFiddleに追加しましたが、これで問題は解決したようです。

于 2012-09-11T19:21:18.293 に答える