im IE will der Header einfach nicht die Breite seines Elternelements beim scrollen annehmen. Der rote Bereich wird beim Verkleinern des Browsers beim Scrollen wieder zur Seite geschoben, wodurch daneben wieder die weiße Hintergrund erscheint .. :(
okay das ist mir entgangen. IE verhält sich hier sogar einigermaßen richtig. eventuell musst du dem header ein width:100% geben. dann stoßt du aber wieder auf das problem des paddings. also
#header { padding:0; width:100%; }
das padding musst du also irgendwie anders realisieren, notfalls mit einem zusätzlichen <h1> oder ähnlichem im header.
Beispiel:
<div id="header" style="width:100%; padding:0">
<h1 style="display:block; padding:1em">HEADER</h1>
</div>
nicht schön aber selten.
Gruß,
Niklas