OK, I've uploaded version .01 of my html/css file here: http://hansbkk.googlepages.com/layout00a01.html Some misc remarks: This is a bad start: body { ... font-size: .8em; ... } Either simply remove it or use font-size: 100%; You can specify different font sizes later if you must. Next, no point in you using <!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional..., use 4.01 Strict. Get rid of all the _java_script__ for the moment till you sort out your problems. In your css, you can use shorthand like border: 2px solid #000; instead of 3 separate instructions every time. Get rid of the _meta_ container . this is not needed for the sort of design you would like. Get rid of the sub footer because it is too silly. A footer is a footer and that is the end of the matter. <g Get rid of sidebar left and right completely. Let the magic of tables do the work for you. You want the 3 col table to span the big container that you want a nice border around and canvas sowing. Fine. Give the container a bit of top margin. Your footer will ensure it needs no special bottom margin. Give the conatiner aut side widths and a width of about 90% but a max-width of say 1400px, and leave it at that. Don't fuss. let your 3col table have a width of 100% (of the main container) and leave the specs for widths of cells alone. Instead, just be sensible about what you pout in the side bars. A list of navigation _link_s that are sensibly short is fine and won't take up width space unnecessarily. leave the width. The width of the left cell will take carew of itself. Ditto the other 2 cells. The main middle one will simply have content and a goodly bit of it so it will take up the lions share mostly anyway. Put a bit of real content, like a few paras of text in the middle cell and forget all about all the stuff you are doing and you will see what i mean. Sorry, but this sort of thing: <div class= block block-block id= block-block-5 is plain crazy confusing. Simplify all. In fact get rid of nearly all your ids and classes and html. (I was down to just css and all was looking simpler and better already: body {margin: 0;padding: 0;} #container { margin: auto; border: 3px solid black; padding: 5px; width: 90%; max-width:1400px; } #logo, #menu, #content-container, #footer { border: 2px solid #000; margin: 5px; padding: 5px; } table {width:100%;} td {border: 1px dotted #000;} )