I may be off my rocker... After a quick look, I saw some puzzling points:
QUOTE
#image {
position : absolute;
width : 100%;
}
#sidebar {
width : 20%;
float : left;
}
Your style sheet gives 100% to #image & 20% to #sidebar"; that does not add up!
#image is positioned 'absolute' but its coordinates are not specified.
I have a an allergic reaction to floats, but would recommend starting with:
QUOTE
#image {width : 80%; float : left;}
#sidebar {width : 20%; float : left}
Alternatively, if you want the #image as the container block, then use it as a wrapper and put all other div's - such as #sidebar, #contents, etc, inside that div.
Hope this may help.