Please take a look at this image:

On the top left, notice how HelloWorld does not have a space between them, while Foo Bar does. The right side shows the mark up; there is no space after Foo or before Bar; just a carriage return and a few tabs. The bottom left shows what the DOM is (per Firebug).
Question: what is there a space between Foo and Bar?
NOTE: here it is on JSFiddle, but it seems to have converted the tabs into spaces: http://jsfiddle.net/sM6rk/
Original mark up (again, tabs turned into spaces):
<html>
<head>
</head>
<body>
<p>Hello<em>World</em></p>
<p>Foo
<em>Bar</em>
</p>
</body>
</html>
The CSS spec explains the presentation of the white-space processing model, specifically: