koan - 11:16 pm on Jan 6, 2012 (gmt 0)
I had to do that transition years ago and it can get a bit frustrating at first but it's necessary and I'm glad I did. You just learn as you go.. maybe don't charge clients for all that time while you're learning. One fundamental concept if you're used to thinking in terms of columns (with tables) is using floats for divs. Say you have a 3 columns layout with a table. You can replace it with a 3 columns layout with div like this:
<div style="float: left; width: 200px">COLUMN #1</div>
<div style="float: left; width: 400px">COLUMN #2</div>
<div style="float: left; width: 200px">COLUMN #3</div>
You also need to add a "clearer" so that anything after those 3 columns are added in the normal flow of elements on the page.
<div style="clear: both;"></div>
Of course, all this CSS code should use classes and IDs in your CSS file instead for easier management and cleaner html page. You can use percentages also instead of fixed pixel width.