Дабы не плодить кучи css-файлов для разных версий ишака, придумал такой скриптик:
/**
* Adds css classes to body like ie, ie-6, ie-gte-5-5, ie-not-7, etc.
* depends on msie browser version
*
* @author Sergey S Yaglov
* @link http://livestreet.ru/profile/1d10t/
*/
jQuery(function(){
if(!jQuery.browser.msie){
return;
}
var versions = ['5.5',6,7,8,9,10];
var body = jQuery('body:eq(0)');
var bv = jQuery.browser.version;
var classes = ['ie'];
var signs = {
'==': '-',
'>=': '-gte-',
'>': '-gt-',
'<=': '-lte-',
'<': '-lt-',
'!=': '-not-'
};
jQuery.each(versions, function(i,v){
for(var sign in signs){
var css_sign = signs[sign];
eval('if(bv '+sign+' v){classes.push("ie"+css_sign+new String(v).replace(".","-"));};');
}
});
body.addClass(classes.join(' '));
});
Применять в css-файлах можно, например, так:
.my-class { ... стиль для нормальных браузеров ... }
body.ie .my-class{ ... стиль для ненормальных браузеров :) ... }
body.ie-gte-7.ie-lte-8 .my-class{ ... стиль для ишаков от 7 до 8 версии включительно ... }