For most layouts there are two stages. Make it work for standards based browsers such as Firefox, then make it work for that pesky IE. Ignore the second step and as much as half your site visitors may not see what you want them to see.
Over the years I have collected a set of techniques that enable me to get IE to comply. These techniques are often weird and unintuitive, such as adding a height of 100% to a div if IE is removing the background image.
What I have found is that by testing against the best browser on the market (Firefox) and the worst browser (IE 6) and making a design fit to both of them, the resulting code will work on virtually any browser.