Jag får inte exakt det problemet du beskriver, här så blir det vita spår efter muspekaren när man scrollar istället.
Sätt float:left; även på div.orange så ska det fixa sig (samt clear:left; för att få dom under varandra).
Detta gör även att du måste sätta en bred på diven om du vill bibehålla utseendet.
Får man förresten föreslå lite annan kod?
Personligen skulle jag gjort såhär istället.
HTML-kod:
<h1>Kontaktpersoner</h1>
<ul id="kontaktlista">
<li>
<img src="http://www.flashback.info/image.php?u=135727&dateline=1157826047" />
<dl>
<dt>Namn</dt>
<dd>Namnet</dd>
<dt>Efternamn</dt>
<dd>Efternamnet</dd>
<dt>E-post</dt>
<dd>namn@domain.se</dd>
<dt>Telfon</dt>
<dd>342348623</dd>
</dl>
</li>
[En 'li' för varje person]
</ul>
Med CSS:
Kod:
ul#kontaktlista{
background: #fa0;
color: #000;
border-bottom: solid #000 1px;
padding: 0;
margin: 0;
float: left;
width: 80%;
}
ul#kontaktlista li{
border: solid #000;
border-width: 1px 1px 0;
list-style-type: none;
float: left;
width: 100%;
padding: 0 0 14px;
margin: 0;
}
ul#kontaktlista li img{
width: 150px;
height: 188px;
float: left;
margin: 14px 14px 0;
}
ul#kontaktlista li dl{
border: solid #000 1px;
background: #fff;
color: #000;
margin: 20px 0 0;
padding: 5px;
float: left;
}
Lite mer 'semantiskt' samt att du får en kant längst ner också.