This is in response to my buddy's post about his struggles with CSS. You should read Dave's post first.

Some might call me a zealot. And yes, I am screaming.

The benefit to css layouts is that you can seperate your content and document structure and behavior. Not doing that is like putting all of your business and data code in your asp.net code behind; because you can do that quicker than defining some interfaces, seperate assemblies, and architecting your code. Don't be so lazy. :)

The hardest part is getting over the thought pattern that tables put you in, and start thinking in a rules way. If you try to implement a table layout with CSS directly, you will struggle. Embrace the CSS way, and it will become so much faster to develop, easier to maintain, and trivial to debug.

To me it is like the curve that most people struggle with when they first try TDD. It takes some hard work and coaching to stop doing things that bad way. Some think it's a waste (before they transcend) thinking it can't be better if they are writing 30% more code than before. But it is.

"Do more of what works, and less of what doesn't."

But hey, use all the tables you want. Thats more business for me to come in and fix it later. ;)

It appears I have more work to do in reminding people that tables tags are for just that, tables! Not for layout. Single, clear pixel GIFs should also be banned. They are in my shop.-bhp