Just learning css and was having a nightmare due to an issue with this tonight.

To hopefully prevent anyone else having the same problem, the non-floated div must come last in the source order. Here's the link most people seem to recommend on the issue (via a search I did):
http://www.positioniseverything.net/ordered-floats.html