The code you have posted (an AJAX call and some data manipulation) is not relevant to how the data ends up being displayed. Look at how you display the data, not how you get the data. Since we're forced to guess, I'll list the causes I can think of:
- The words are split into separate DOM elements and are given
position:absolute
via CSS. Removeposition: absolute
, calculate the words' correct position via javascript (not easy) or simply not split into several elements. - The words are split into separate DOM elements and are given
width:0
(or any width that's too small) andoverflow: visible
(default value for overflow). The treatment is the same - remove the respectivewidth
attribute. - The element containing the words has
width:0
,line-height:0
andoverflow:visible
. This seems unlikely but does not imply separate elements. If this is the case, you can fix this by replacing ordinary spaces byn
on-b
reakingsp
aces, in addition to the correct way of fixing the CSS. - The element has negative
word-spacing
. Why would anyone do that? - CSS3 defines
text-height
and someruby-
properties. Since they are new, I don't expect them to have any effect in IE8.