Ich habe gerade ein ziemlich seltsames Verhalten von mehrzeiligem Text in Firefox mit knockoutjs Bindings bekommen. Hier ist meine Geige: Ссылка .
Wir haben eine Textfläche und überspannen sie mit Wert / Text, der an dieselbe Observable bindet. Derzeit zeigen Chrome und IE einen mehrzeiligen Text im span-Element an, Firefox jedoch nicht (es verkettet nur mehrere Zeilen zu 1).
Kann jemand erklären, was ist / wo ist das Problem? Vielleicht ist jemand schon auf dieses Problem gestoßen und hat eine Lösung?
Vielen Dank im Voraus
P.S. Firefox 12, IE 9, Chrome 18
Wenn Sie den white-space: pre-wrap
Stil für den Bereich festlegen, wird es funktionieren: Ссылка
Hier ist ein kleiner Hintergrund. IE und Chrome werden die Zeilenumbrüche in der Zeichenfolge in <br>
-Elemente im HTML konvertieren, wenn der Text mithilfe von innerText
festgelegt wird. Dies wird von Knockout verwendet. Firefox hat nicht innerText
, also verwendet Knockout textContent
, was keine Umwandlung der Zeichenkette bewirkt. (Interessanterweise entspricht Chrome Firefox, wenn Sie den Style white-space: pre-wrap
verwenden.)
IE:
%Vor%Chrome (ohne Leerzeichen):
%Vor%Firefox und Chrome (mit Leerzeichen-Stil):
%Vor%Tags und Links knockout.js javascript firefox