Add the following lines of CSS to your stylesheet. The negative value for the margin in
.wrapper
is.footer
and .push
. The negative margin should always equal to the full height of the footer (including any padding or borders you may add).the same number as the height of
* {
margin: 0;
}
html, body {
height: 100%;
}
.wrapper {
min-height: 100%;
height: auto !important;
height: 100%;
margin: 0 auto -4em;
}
.footer, .push {
height: 4em;
}
Follow this HTML structure. No content can be outside of the .wrapper and .footer
div
tags unless it is absolutely positioned with CSS. There should also be no content inside the .push div
as it is a hidden element that "pushes" down the footer so it doesn't overlap anything. <html>
<head>
<link rel="stylesheet" href="layout.css" ... />
</head>
<body>
<div class="wrapper">
<p>Your website content here.</p>
<div class="push"></div>
</div>
<div class="footer">
<p>Copyright (c) 2013</p>
</div>
</body>
</html>
Multi column layout with Sticky Footer
Add
clear
to the .push div.footer, .push {
clear: both;
}
Reference : Resources for Web Designer