Come posso indirizzare solo Internet Explorer 10 per determinate situazioni come CSS specifico di Internet Explorer o codice JavaScript specifico di Internet Explorer?
Ho provato questo, ma non funziona:
<!--[if IE 10]> <html class="no-js ie10" lang="en"> <![endif]-->
<!--[if !IE]><!--> <html lang="en" class="no-js"> <!--<![endif]-->
Internet Explorer 10 ignora i commenti condizionali e utilizza <html lang="en" class="no-js">
invece di <html class="no-js ie10" lang="en">
.
@cc_on
istruzione . Così, per rilevare se IE10 è supportata o meno, è possibile utilizzare il seguente codice: <!--[if !IE]><!--><script>if(/*@cc_on!@*/false){document.documentElement.className+=' ie10';}</script><!--<![endif]-->
. (L'ho pubblicato come commento, poiché IE è ancora in fase di sviluppo, quindi non è noto se anche la versione finale supporti questa funzione)
<script>if(Function('/*@cc_on return document.documentMode===10@*/')()){document.documentElement.className+=' ie10';}</script>
Miglioramenti: non necessita di commenti condizionali; funziona anche se la compressione / elaborazione di stripping dei commenti; nessuna classe aggiunta per ie11; funzionerà con ie11 in esecuzione in modalità di compatibilità ie10; non necessita di tag di script autonomo (può essere semplicemente aggiunto ad altri javascript in testa).
if(document.documentMode) document.documentElement.className+=' ie'+document.documentMode+'mode';
- che risolve il 90% dei problemi (a volte le modalità di compatibilità falliscono, nel qual caso è necessario un altro livello di correzione oltre a quello).