У нас есть приложение, в котором пользователи могут вводить «заметки» в элемент управления расширенного редактирования (RedEditor от Telerik, но здесь это не имеет значения). У нас был пользователь, который вводил заметки из w / in 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;
не только к span, но и к div! Следовательно, эта длинная строка, которая должна была быть перенесена, поскольку она не входит в промежуток, теперь выталкивает документ до тех пор, пока строка не уместится на странице.
Что мне не хватает. Я знаю, что у IE есть проблемы, но это кажется неправильным даже для IE.
Итак, вопрос (ы):
1) Верно ли, что атрибут white-space
должен был применяться только к диапазону?
2) Можно ли это как-то решить? Помните, я не контролирую вводимый контент. И он введен с Mac с Safari и просматривается в IE.
Редактировать. Тип документа на рассматриваемой странице:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">