If today I could use CSS3 on every site I built, it would be a dream come true, but the fact of the matter is that I can’t. That is to say, that I can’t rely on it. The reason is due to browser support and market share.
On this site, almost everything is CSS and CSS2. I don’t use CSS3 commonly in my markup for a simple reason: Not all browsers support it.
By “Not all browsers” I mean “Only the newest version of the best browser”. Text-shadow is now pretty universally recognized, but still not in IE, or earlier versions of every other browser. The problem is not the technology (although with Microsoft it is). The problem is the user. Upgrading browsers is seemingly a time consuming pain, so most people don’t want to do it if they can use the internet just fine with the browser they have.

Internet Explorer (IE) is cause for many woes when it comes to web development. IE6 is the most riddled with bugs and standards non-compliant issues, but IE7 and IE8 still have their own quirks and screwups. Let me break this down in list format real quick:
So, effects like text-shadow, which is very handy when you want to add a little something extra to your site are the kind of thing that you can use, but not count on. Where effects like multiple backgrounds, multiple columns (pure css) and rgba only create code that is difficult to maintain (to name a few).
In summary, I’d love to use CSS3 in my markup. I especially look forward to CSS3 columns, but unless I’m designing for a very specific set of web savvy users (which is a small percentage), it’s not realistic yet.