For me one area of HTML and CSS that most people don’t discover is the extensive internationalisation support, with HTML elements like <ruby>
, attributes like hreflang=""
, and CSS like {list-style-type: cjk-ideographic;}
. Admittedly while I’ve used all of these, the vast majority of people won’t ever need to.
To answer your second (woops, updated) question, browsers are implementing different parts of the HTML5 and CSS3 specifications, and at differing rates. Generally Webkit browsers (Safari, Mobile Safari, Crome) and FireFox are implementing the fastest, Opera is doing a good job, and Internet Explorer is drunk in the corner. @Kobi’s answer has some links to what browsers support what.
Regarding when you can rely on these new specifications for a business site, that entirely depends on your users and what browsers they use. If your site is targeting iPhone users you can use a lot already. However this isn’t the best way to think about the issue. Most of the CSS3 properties that have been implemented, such as rounded corners, drop shadows, and CSS gradients, actually degrade really nicely so you can use them to reward users with good browsers right now. This idea is called progressive enhancement.
As for HTML5, it’s 90% HTML4 with defined error handling, so changing to HTML5 is as easy as changing your doctype—no other changes required. If you don’t use the new semantic elements then IE has no problem with HTML5. The benefits of the HTML5 doctype are a far better spec to refer to, two validators with more informative error messages (I think @Marius means HTML5 forms validation), and the ability to use ARIA roles. I wrote an article on changing from HTML4/XHTML1 to HTML5, and cover the benefits in doing so.
HTH