ユーザーがリッチ エディット コントロールに「メモ」を入力できるアプリケーションがあります (Telerik の RedEditor ですが、ここでは関係ありません)。メモの中央にがある Safari からユーザーにメモを入力してもらい<span></span>
、そのスパンにはスタイルがwhite-space:pre
あり、メモの HTML は次の形式でした:
<div> This is a note <span class="Apple-tab-span" style="white-space: pre; "> </span> and here's more of the note. </div>
シンプルに、スタイルはスパンに適用する必要があり、スパンには 4 つのスペースがありました。結果の出力には 4 つのスペースが含まれているはずです。
これが問題です。IE は、そのwhite-space: pre;
スタイルをスパンだけでなく、囲んでいる div にも適用しているようです! したがって、この長い行はスパン内にないため折り返されるべきでしたが、行がページに収まるまでドキュメントを押し出しました。
何が欠けていますか。IE に問題があることは知っていますが、これは IE でも正しくないようです。
だから、質問:
white-space
1)属性がスパンにのみ適用されるべきだったというのは正しいですか?
2) これはどうにかして解決できますか? 覚えておいてください、私は入力されたコンテンツを制御できません. Mac w/Safari から入力し、IE で表示しています。
編集: 問題のページの doctype は次のとおりです。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">