Tengo entendido que la propiedad
clear es sólo para reiniciar las propiedades de
float anteriores y no para los
position.
No recomiendo que uses la propiedad
position a no ser que sea estrictamente necesario, son mejores los float.
La etiqueta DIV (capa) tiene por defecto la propiedad display: block. Por lo tanto únicamente deberías especificar un ancho y largo, así como un float, a cada uno de los elementos.
Para evitar problemas de posicionamiento, puedes crear la etiqueta:
Código:
div.clear {clear:both; height: 0px}
Código HTML:
<div class="clear"></div>
E insértala antes del pie.
Un saludo.