UDPATE!!!
Suggested answer is NOT correct, my mistake. The #container DIV should've had "float:left;". Please verify the HTML in Firefox and IE7. You can see the difference!
I can't get a nested DIV to display above a hierarchically higher nested DIV by using z-index... The overlay keeps laying over the lower nested DIV even though the lower nested DIV has a higher z-index... Is this even possible in IE7?
The following displays the blue #details above the green #overlay in Firefox, however in IE7 the blue #details is below the green #overlay
UDPATE2: Pricey: Adding "z-index:99;" to the #container style makes the class .item divs appear (in Firefox, IE is messed up: anyway both don't display correctly), while they should be under the overlay! Without the #container z-index set, it displays correctly in Firefox, but not IE....
<html>
<body>
<style type="text/css">
.item {
float:left;width:75px;height:75px;background-color:red;
}
</style>
<div id="main" style="position:relative;">
<!-- this one should overlay everything, except #details -->
<div id="overlay" style="position:absolute;
top:0px;
left:0px;
width:500px;
height:500px;
z-index:1;
background-color:green;"></div>
<div id="container" style="position:relative;float:left;">
<!-- these ones should display UNDER the overlay: so NOT visible -->
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<!-- this one should display above the overlay -->
<div id="details" style="position:absolute;
width:200px;
height:200px;
background-color:blue;
left:400px;
z-index:99;"></div>
</div>
</div>
</body>
</html>