Apesar de todas as malvadesas da Microsoft, existe uma coisa chamada comentário condicional (em html):
<!--[if IE]-->
<link rel="stylesheet" href="css_feito_para_o_ie.css" type="text/css">
<!--endif-->
Há também esses comentários para versões específicas do IE (esses comentários só funcionam nele, não adianta colocar "<!--[if Opera]-->" porque, ao menos dizem, não funciona.
Isso foi inventado pela Microsoft e usado desde o IE 5.0, se não me engano. Bem que os outros navegadores poderiam usar algo similar, para não precisarmos usar hacks se for necessário.
No entanto, o código acima está errado. O certo seria:
<!--[if IE]>
Código para se executar só no IE
<![endif]-->
Para corrigir problemas nas versões do IE anteriores à 7, pode-se usar o seguinte código:
<!--[if lt IE 7]>
Código para se usar só nos IEs cujas versões são abaixo da 6
<![endif]-->
Para fazer com que algo
não seja carregado no IE, esses comentários não podem estar escondidos dos outros navegadores, então não podem se parecer com comentários comuns (que usam os códigos "<!--" e "-->"). Fica assim:
<![if !IE]>
Código para não se usar no Internet Explorer, mas em qualquer outro navegador
<![endif]>
Vejam mais informações
aqui ou
aqui.