Agrego observaciones
Si vas a usar condicionales de IE para redefinir reglas que ya existen para los css comunes a los demas browsers, los links a los css para IE deben de ser los ultimos en cargarse.
Ejemplo:
Supongamos tenés una capa con clase "notas", <div class="notas"></div> y necesitas una pequeña corrección en el margen para IE (sin importar la versión)
css.normal
.notas{
margin-left: 5px;
}
css.ie
.notas{
margin-left: 10px;
}
si pones
Código HTML:
Ver original<!--[if IE]>
<link rel="stylesheet" type="text/css" href="ie.css" media="screen" />
<![endif]-->
<link rel="stylesheet" type="text/css" href="normal.css" media="screen" />
lo definido en normal.css va a anular lo que se intenta modificar con ie.css (es obvio que IE tambien va a leer y ejecutar normal.css
lo correcto sería
Código HTML:
Ver original<link rel="stylesheet" type="text/css" href="normal.css" media="screen" /> <!--[if IE]>
<link rel="stylesheet" type="text/css" href="ie.css" media="screen" />
<![endif]-->
Yo en particular, y si usas php, me manejo con esto, pudiendo cargar contenidos muy especificamente para cualquier navegador y versión
http://foros.emprear.com/deteccion-browser
Saludos