Я думаю, что самый простой способ - это поместить класс "IE" в ваш элемент HTML, используя условный код ... Я думаю, что я получил это изначально из шаблона HTML5 http://html5boilerplate.com/
<!doctype html>
<!--[if lt IE 7 ]> <html class="no-js ie" lang="en"> <![endif]-->
<!--[if IE 7 ]> <html class="no-js ie" lang="en"> <![endif]-->
<!--[if IE 8 ]> <html class="no-js ie" lang="en"> <![endif]-->
<!--[if (gte IE 9)|!(IE)]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
.bg-gradient {background: filter: 0, #999}
.ie .bg-gradient {
background: filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#7db9e8',GradientType=0 ); / IE6-8 */
}
Затем простоиспользуйте add и remove class для удаления класса 'element'
$(document).ready(function(){
$('.element').addClass('bg-gradient');
})
. Фильтры не будут отображаться браузерами не IE, поэтому добавление или удаление для всех браузеров , за исключением IE 6-8будет иметь тот же эффект, что и для IE9.Также я считаю, что ie9 поддерживает несколько свойств фона, поэтому другие браузеры должны пропустить первое значение, разделенное запятыми - теоретически - я не проверял его.Если нет, просто используйте обычный синтаксис css2:
.bg-gradient {background: filter: 0}