di solito è il float che da questo tipo di problema, mi sa che hai utilizzato un po troppi clear both
.
prova così:
codice:
hr
{
clear: right;
margin: 0;
visibility: hidden;
}
poi aggiungi:
codice:
<div style="clear:left;"></div>
subito prima di #footer. per questo ti puoi pure fare una classe tipo:
codice:
.recupero_left{
clear:left;
font-size:0px;
line-height:0px;
height:0px;
}
insomma prova a recuperare il float con il corrispondente clear (float:left;->clear:left
già IE si affatica da solo , non lo facciamo pensare troppo
.
a questo link trovi un articolo che ti può essere utile.
Credo poi sia meglio specificare una larghezza fissa per div.news, tanto è un layout a dimensioni fisse.
poi se mi posso permettere, ridai un'occhiata al css, specifichi alcune proprieta inutili