This is one big long rant and bounces around a bit but stay with me :)
I'll admit it I'm a hypocrite when it comes to web development. I'll rant and rave about about standards compliance and the right way to do things.
Then I'll turn right around and use tables for layout, and add my own namespaced attributes to HTML elements and then tell people not to worry about standards mode and XHTML validation.
You might ask how I can do this and look myself in the mirror, especially some of you that have been on the the receiving end of the ranting, well let me tell you there are three very important reasons.
TIME , MONEY , REALITY
TIME and MONEY you never have enough, neither does your boss/company/client/etc. And you need to finish the current project you are on yesterday and get started on the next project the day before that , sound familiar ;)
Getting to 95% standards compliance is easy, that last 5% is what is the killer, and nobody even cares except some buggy W3C validator.
XHTML is not the solution to a problem that concerns anybody except the guys who have to write
parsers that convert markup into DOM trees.
Building a tableless layout is all great and good. Except then you have to spend extra time and effort QA'ing because the different browsers render CSS different, or not at all (more on that later).
Even if the newest browser version renders things better if you are like most people and want to reach the biggest audience then you need to support older browsers for a long time (IE 6 is not going away anytime soon).
REALITY is the 800 pound gorilla and that gorilla's main branch to beat you over the head with is my favorite, the most useful and most ubiquitous piece of software in the world, the web browser.
It's not my fault I didn't do it.
MS did it with IE.
Netscape did it with Netscape. (RIP)
Mozila Group did it with Firefox.
Apple did with Safari.
Opera did with Opera.
And what did they do?
They are the ones that don't render things correctly and even more importantly they don't render consistently , and let me tell you the big secret, they probably never will unless they all decide to start using the same rendering engine, which isn't going to happen, and truthfully shouldn't, competition is good and will result in better browsers. Look how much better IE7 is compared to IE6 and IE 8 just passed the ACID 2 test which is huge, and the reason for these improvements because Firefox is so much better than IE, at least for now.
Don't get my wrong standards compliance is a worthy goal, but like most things in this world it's the journey not the destination that is the worthier part.
As you strive to get to 100% standards compliance your page weight goes down, your CSS gets separated out of the HTML to where it belongs. And the closer you get the easier it is but it's a never ending process, HTML 5 will be here sooner than you know it, and this will start over again.
On APEX's end we will continue to make sure the HTML we generate is as close as we can make it to XHTML compliant as we can while still supporting the widest range of browsers in the easiest way.
PS. NO!!!! YOU STILL CAN'T USE FONT TAGS ANYMORE, THAT IS TOO HYPOCRITICAL EVEN FOR ME!!!!!!!!!!!!!!!!