I wrote this post a while back. The content can still be relevant but the information I've linked to may not be available.
Firstly, Keith Clark has developed a script called ie-css3.js that rewrites your style sheet and renames styles so that newer CSS pseudo selectors are supported by all recent versions of IE. For example, the method enables the use of selectors like :nth-child, :last-child, and :first-child in Internet Explorer. Great stuff!
Note: The :first-child pseudo selector is supported in IE7 and IE8 but not in IE6.
Related: For an alternative approach, Modernizr determines the availability of CSS features and provides a way to use conditional statements/styles in your CSS.