This demo uses no extra markup in the html for Opera and IE8 compliance.
Using a body:before float for Opera's page redraw bug.
Using a wrapper:after block with height:1%; for IE8's min-height:100%; bug.
See Example#2 for a method that uses a non-semantic dummy float in the html which will keep the CSS very simple.
Reduce viewport height to scroll content and test sticky footer test sticky.
This is just a test float to ensure that #content is containing it's floats.
Content
Content
Content
Content
Last line of text shows #content div's bottom-padding.
It protects text
from sliding under the footer which was pulled up with a negative top margin.