Forse la cosa migliore potrebbe essere inserire un pixel in meno (-1, non 489 invece di 490 ) proprio per ovviare ai deficit di IE5, vedi sempre su constile a proposito del box model e del layout a tre colonne fisso.
Io comunque preferisco realizzare un CSS specifico per IE5, poi lo carico dinamicamente grazie al PHP, da quando ho scoperto questa scappatoia va da dio.
Il problema mi si ripresenta quando devo realizzare molti CSS, li ce ne vuole un set solo per IE (vedi blogger che ancora non funzia bene proprio con IE5).

<?php
function browser ($comp) {
if(strstr($comp, "MSIE 7")) $browser = 'IE 7';
else if(strstr($comp, "MSIE 6")) $browser = 'IE 6';
else if(strstr($comp, "MSIE 5")) $browser = 'IE 5';
else if(strstr($comp, "MSIE 4")) $browser = 'IE 4';
else if(strstr($comp, "MSIE 3")) $browser = 'IE 3';
else if(strstr($comp, "Netscape 7")) $browser = 'Netscape 7';
else if(strstr($comp, "Netscape 6")) $browser = 'Netscape 6';
else if(strstr($comp, "Netscape 5")) $browser = 'Netscape 5';
else if(strstr($comp, "Netscape 4")) $browser = 'Netscape 4';
else if(strstr($comp, "Netscape 3")) $browser = 'Netscape 3';
else if(strstr($comp, "Gecko")) $browser = 'Mozilla';
else if(strstr($comp, "Opera")) $browser = 'Opera';
else if(strstr($comp, "Konqueror")) $browser = 'Konqueror';
else if(strstr($comp, "Galeon")) $browser = 'Galeon';
else if(strstr($comp, "Linx")) $browser = 'Linx';
else $browser = 'Other';
return $browser;
}

$agent = getenv("HTTP_USER_AGENT");
if (preg_match("/Win/i", $agent)) {
switch (browser($agent)){
case "IE 6": $msg = "<style type='text/css' media='screen'>\n @import url('indexIE.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontIE.js' media='screen'></script>\n";
break;
case "IE 5": $msg = "<style type='text/css' media='screen'>\n @import url('indexIE.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontIE.js' media='screen'></script>\n";
break;
case "Netscape 6": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Netscape 7": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Mozilla": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Opera": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
break;
}
} else if (preg_match("/Linux/i", $agent)) {
switch (browser($agent)){
case "Konqueror": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Galeon": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Netscape 6": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Netscape 7": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Mozilla": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Opera": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
break;
}
} else if (preg_match("/Mac/i", $agent)) {
switch (browser($agent)){
case "IE 6": $msg = "<style type='text/css' media='screen'>\n @import url('indexIE.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontIE.js' media='screen'></script>\n";
break;
case "IE 5": $msg = "<style type='text/css' media='screen'>\n @import url('indexIE.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontIE.js' media='screen'></script>\n";
break;
case "Netscape 6": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Netscape 7": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Mozilla": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
//$msg .= "<script type='text/javascript' src='aumenta-fontMOZ.js' media='screen'></script>\n";
break;
case "Opera": $msg = "<style type='text/css' media='screen'>\n @import url('indexMOZ.css');\n</style>\n";
break;
}
}
echo ("$msg\n");
?>
Sembra lungo e complicato, ma praticamente è semplice semplice.
Be qui l'ho copiato al volo da un mio sito senza edulcorarlo, ma dovrebbe essere chiaro lo stesso.