see attached image for better explanation
This is because you use multiple <span> elements instead of <p>. <span>s are not really considered to be separate at all. especially when used inside another inline element. Just render the text with line breaks, or better, use multiple <p> inside a <div>, it's what <p> is meant for.