I have a ...s
div.foo {
clear: both;
}
When you apply clear to an element, it will move THAT element so that it doesn't have items left or right of it. It does not re-position any of the other elements, it simply moves the element to a position where nothing is around it.
Edit
Items above the item cleared are not moved, items below the element COULD be moved. Also note the additional comment in the comments