...benötigt nur ein paar Conditional Comments um das öffnende
Body-Tag:
<html>
<!--[if IE 5]><body class="ie5"><![endif]-->
<!--[if IE 6]><body class="ie6"><![endif]-->
<!--[if IE 7]><body class="ie7"><![endif]-->
<!--[if IE 8]><body class="ie8"><![endif]-->
<!--[if gt IE 8]><body class="ie9plus"><![endif]-->
<!--[if !IE]><!--><body class="nonie"><!--<![endif]-->
</body>
</html>
und schon kann man valide und ohne Hacks im CSS selektieren.
(Editinfo: im ursprünglichen Post hatte ich den zukünftigen IE9+
vergessen...)