There’s a basic issue with placing floating <div>s or any floating element for that matter in a parent <div>, the parent looses all sense of height and becomes essentially invisible.  The parent can now no longer have a background, border or any defining style that would show up behind and around the children elements.  But with a bit of CSS you can remedy that situation. Look at how the Example After heading is pushed around because the <div> isn’t cooperating nicely.

HTML:

<div id="Footer">
	<a href="/blog/">Home</a>
	<a href="/blog/contact/">Contact</a>
</div>

CSS:

#Footer {
	background: yellow;
	border: 1px solid blue;
}
#Footer A {
	float: left;
	width: 100px;
}
#Footer:after {
	content: "";
	display: block;
	height: 100%;
	clear: both;
}

Example Before:

Example After: