SyntaxFix
Write A Post
Hire A Developer
Questions
You need to give the body and the html a height too. Otherwise, the body will only be as high as its contents (the single div), and 50% of that will be half the height of this div.
body
html
Updated fiddle: http://jsfiddle.net/j8bsS/5/