Firstly, relative positioning does what you've described: it reserves space in the original location but displays the DIV offset by some amount.
If you float the DIVs then they will stack left-to-right, but this can cause problems.
A three-column layout using CSS is quite hard. Have a look at [http://www.glish.com/css/7.asp]