As you said it your self, the AP is relative to the "nearest" parent that has RP.
Code:
#footer_venue {
background: none repeat scroll 0 0 #CC3333;
clear: both;
height: 1%;
padding: 0;
text-align: left;
position: relative;
}
Parent in the sense that it contains the absolute positioned element, no matter on what level of the inclusion tree that happens. <div> asside is not a parent to your logo <div>, neither is one to footer_venue <div>.
If footer_venue <div> was contained in <div> asside, it would work putting the RP to <div> asside, like you did. But that would ruin your layout, and set the top and left absolute positions relative to <div> asside box model
In short, you have to position a parent element if you want it to contain its absolute positioned child elements, much like you need to "declare" a height for a element, by establishing a new BFC (overflow:auto/hidden), if you want it to containts its floated child elements.
Bookmarks