Forum Moderators: open
Webmasterworld has a good CSS forum:
[webmasterworld.com...]
[w3.org...]
You will see that it defines divs as a way to group other content together - in a similar way to how you have been using tables for controlling layout.
In answer to your more global question, I can think of no better way than to start going through the library of the CSS forum on this site for a grounding in non-table layout.
For some additional food for thought, take a look at the CSS Forum Charter [webmasterworld.com].
;)