Как добавить CSS Hack специально для IE10?

Я пытаюсь добавить css только для iE 10.

на самом деле мой css отлично работает в chrome и firefox. Но создает некоторые проблемы в IE 10.

я попробовал этот код и сделал ie10.css, но он не работает.

<script> 
if (/*@cc_on!@*/false) { 

    var headHTML = document.getElementsByTagName('head')[0].innerHTML; 

headHTML    += '<link type="text/css" rel="stylesheet" href="css/ie10.css">'; 
document.getElementsByTagName('head')[0].innerHTML = headHTML; 
} 
</script>

Он не работает. Пожалуйста, помогите.

2 ответов


вы можете легко отслеживать последние версии IE (в основном IE 10 и IE 11) с помощью

1. CSS media query hack:

/* 
    #ie10,11 will only be red in MSIE 10, 
    both in high contrast (display setting) and default mode 
*/

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { 
   //-- Put your IE specific css class here 
}

или

@media screen and (min-width:0) {  
    /* IE9 and IE10 rule sets go here */  
}

читать это

Пример Работающего

2. Обнаружение Браузера:

if ($.browser.msie && $.browser.version == 10) {
  $("html").addClass("ie10");
}

3. Использование скрипта (не проверено):

<script>
    /*@cc_on
      @if (@_jscript_version == 10)
          document.write('<link type= "text/css" rel="stylesheet" href="your-ie10-styles.css" />');
      @end
    @*/
</script >

примечание : Я знаю document.write считается плохим практиковать.

условные комментарии (IE10 отброшены условные комментарии):

если вы хотите загрузить внешний файл CSS для IE, вы можете использовать условные комментарии. Но, как вы упомянули в вопросе, вы хотите для IE 10 и ie10 отбросил условные комментарии.

Microsoft отбрасывает условные комментарии в ie10.


вот еще один трюк, который я использовал в своем проекте, вы можете заменить h1 своим классом или собственным CSS

в IE10 только

http://css-tricks.com/ie-10-specific-styles/

используйте этот JavaScript:

var doc = document.documentElement;
doc.setAttribute('data-useragent', navigator.userAgent);

затем используйте этот CSS:

html[data-useragent*='MSIE 10.0'] h1 { color: blue; }

Нажмите здесь для всех более ранних версий для IE