I tried making a liquid 3-column CSS layout (for those of you who don't know, "liquid" or "fluid" layouts are those that vary in size depending on the browser window's size) with the center column being liquid and the left and right column being a fixed size.
The only problem is that when you make the screen size too small, the right column overlaps everything else, and stuff you have in your header often pushes everything else down - basically a trainwreck of DIVs.
I found that if you encapsulate your entire site in a single table cell, and put a transparent image with the minimum width you want (I set mine to 750 pixels) inside the cell at the very top or bottom, the CSS will never shrink past that point, but will still stretch outwards.
Some might say it defeats the purpose of using CSS in-lieu of tables in the first place - but this way you only have table tags at the very top and bottom of your document, and the overall code-to-content ratio is dramatically increased.
That's what I did, too. Instead of the image, I used <hr> as a minimum "prop-stick" and used external css to set the width a make it hidden. I went this route because it's faster loading than an image and lightweight to code. The disadvantage is that the horizontal rule does show in NN4, but I placed it at the bottom of the column and it's not particularly obtrusive.