Comment ramener le «mode navigateur» dans IE11?


132

MISE À JOUR : l'ancienne question s'applique uniquement à l'aperçu IE11; le mode navigateur était de retour dans la version finale d'IE11. Mais il y a un hic: il est quasiment inutile, car il n'émule pas les commentaires conditionnels. Par exemple, si vous les utilisez pour activer la prise en charge de HTML5 dans les IE hérités, vous ne pourrez plus déboguer votre site dans IE11.

        <!--[if lte IE 8]>
            <script src="html5shiv.js"></script>
        <![endif]-->

Lisez une autre question StackOverflow et un problème de suivi des bogues IE . Microsoft n'a jamais répondu à cela, il semble donc qu'ils ont introduit ce bogue exprès pour inciter les gens à acheter des abonnements BrowserStack. L'émulation de commentaires conditionnels fonctionnait très bien dans la version préliminaire.

QUESTION ORIGINALE : Lorsque l'aperçu IE11 est installé sur Windows 7, il est livré avec un outil F12 à l'ancienne qui permet de changer les modes du navigateur. entrez la description de l'image ici

Cependant, si vous allez dans le menu «Outils» et sélectionnez l'outil de développement «F12», il est remplacé par de nouveaux outils de développement et le «mode navigateur» n'est plus disponible. entrez la description de l'image ici

La seule façon de le ramener est de désinstaller IE11 et de le réinstaller.

Existe-t-il un moyen plus simple de basculer entre les modes de navigateur dans IE11?


1
Cela semble être une excellente question pour un forum spécifique à MS (ou peut-être un rapport de bogue!)
Mathletics

4
@Mathletics - ce n'est pas un bug, c'est assez délibéré.
Spudley

2
Comment diable avez-vous réussi à obtenir le premier écran? Pourquoi j'appuie sur F12, le DEUXIÈME ÉCRAN apparaît.
Sliq

1
@Panique - c'était juste là quand j'ai installé IE11 pour la première fois. C'est probablement parce que j'ai toujours l'outil F12 présent dans IE10, donc il a en quelque sorte migré ce paramètre. Ensuite, je peux utiliser la touche F12 pour l'afficher et le masquer. NE PAS ALLER AU MENU OUTILS. Si vous souhaitez le réactiver, désinstallez d'abord la mise à jour IE11. Travaille pour moi.
Evgeny

Réponses:


146

[METTRE À JOUR]

La question d'origine et la réponse ci-dessous s'appliquaient spécifiquement aux versions d' aperçu d' IE11 .

La version finale de IE11 ne en fait de fournir la possibilité de modes de navigateur commutateur de l'onglet Emulation dans les outils de développement:

Capture d'écran montrant la sélection du mode navigateur dans l'onglet d'émulation

Cela dit, les conseils que j'ai donnés ici (et ailleurs) pour éviter d'utiliser les modes de compatibilité pour les tests sont toujours valables: si vous souhaitez tester votre site pour la compatibilité avec les anciennes versions d'IE, vous devez toujours faire vos tests dans une copie réelle de ces version IE.

Cependant, cela signifie que le piratage du registre décrit dans la réponse de @ EugeneXa pour ramener les anciens outils de développement n'est plus nécessaire, puisque les nouveaux outils de développement ont maintenant la fonctionnalité qui lui manquait.


[RÉPONSE ORIGINALE]

Les développeurs IE ont délibérément abandonné la possibilité de changer de mode navigateur.

Il n'y a pas beaucoup de raisons pour lesquelles les gens changeraient de mode dans les outils de développement, mais l'une des principales raisons est qu'ils veulent tester leur site dans les anciennes versions d'IE. Malheureusement, les différents modes de compatibilité fournis par IE n'ont jamais été entièrement compatibles avec les anciennes versions d'IE, et les tests en mode compat ne sont tout simplement pas un substitut suffisant pour les tests dans des copies réelles de IE8, IE9, etc.

Les développeurs IE ont reconnu cela et rendent délibérément plus difficile pour les développeurs de faire cette erreur.

La meilleure pratique consiste à utiliser des copies réelles de chaque version d'IE pour tester votre site à la place.

Les différents modes de compatibilité sont toujours disponibles dans IE11, mais ne sont accessibles que si un site déclare explicitement qu'il veut s'exécuter en mode compat. Vous feriez cela en incluant un en- X-UA-Compatibletête sur votre page.

Et la liste déroulante du mode document est toujours disponible, mais n'offrira jamais que les options de "Edge" (c'est-à-dire le meilleur mode disponible pour la version actuelle d'IE, donc le mode IE11 dans IE11) ou le mode dans lequel la page est en cours d'exécution dans.

Ainsi, si vous accédez à une page chargée en mode compat, vous aurez la possibilité de basculer entre le mode compat spécifique dans lequel la page a été chargée ou le mode IE11 "Edge".

Et si vous allez sur une page qui se charge en mode IE11, alors vous ne serez offert que le mode «bord» et rien d'autre.

Cela signifie qu'il vous permet toujours de tester la façon dont une page en mode compatibilité réagit à sa mise à jour pour fonctionner en mode Edge, qui est de toute façon le seul cas d'utilisation vraiment légitime de la boîte de dépôt en mode document.

La boîte de dépôt IE11 Document Mode a une iicône à côté qui vous amène au site Web modern.ie. Le but est de vous encourager à télécharger les VM que MS nous fournit pour tester nos sites en utilisant des copies réelles de chaque version d'IE. Cela vous donnera une expérience de test beaucoup plus précise et est fortement recommandé comme une bien meilleure pratique que les tests en changeant de mode dans les outils de développement.

J'espère que cela vous explique un peu les choses.


8
Bien que les tests à l'aide des machines virtuelles gratuites fournies par MS soient absolument meilleurs, ils prennent également plus de temps. Je dois démarrer la VM, je dois basculer entre plusieurs VM différentes et je dois réinstaller les petits buggers à chaque fois que le minuteur d'activation s'épuise car ils ne fournissent aucune clé d'activation. Pourtant, je suppose que nous devrions être reconnaissants qu'ils aient pris la peine de configurer ces machines virtuelles. Vous pourriez attraper beaucoup de pièges avec les anciens modes de compatibilité F12, puis vérifier une fois à l'aide des machines virtuelles. Mais je m'éloigne du sujet.
ivarni

7
Je comprends pourquoi ils pensent que c'est une bonne idée de désapprouver la liste déroulante du mode de compatibilité, mais je pense que c'est aussi une gifle pour tout développeur qui passe du temps à s'assurer que son site fonctionne dans IE. Comme d'autres l'ont mentionné, la recherche de bogues évidents à l'aide du vérificateur de compatibilité fonctionnait bien. De plus, vous aviez l'avantage d'un ensemble d'outils de développement à mi-chemin décent (par rapport à la poubelle qui était les outils dans IE7 et même 8.) Je prends l'habitude de vérifier les machines virtuelles également, tout bon développeur le ferait. Mais ce changement signifiera simplement que les développeurs se soucieront moins de faire fonctionner les choses dans l'ancien IE.
LocalPCGuy

4
En passant, je ne devrais pas avoir à charger un système d'exploitation complet dans une VM pour tester un navigateur stupide. Si Microsoft voulait vraiment que les développeurs s'assurent que leurs éléments fonctionnent dans les anciennes versions d'IE, ils devraient fournir une meilleure option GRATUITE pour le faire. Sinon, il semble qu'ils encouragent les développeurs à ignorer simplement les anciennes versions et à ne se soucier que de contourner les bogues dans les versions plus récentes.
LocalPCGuy

9
Non ... BrowserStack n'est pas gratuit, les VM sont difficiles à utiliser (ne me dites pas le contraire, je les ai toutes configurées, et je dois les réinitialiser tous les 3 mois, etc ... elles sont pénibles ). Je sais tout sur Modern.ie et les offres de Microsoft. Microsoft supprime une méthode simple et gratuite qui fonctionnait pour environ 90% des choses que la plupart des développeurs doivent tester, et la remplace par des VM encombrantes ou des services payants. Colorez-moi pas impressionné. Et je suis l'un des supporters de Microsoft, je travaille principalement dans une boutique .NET. Et je pense que c'est DUMB.
LocalPCGuy

4
Je vois cela comme: "Nous avons raté et nous vous avons donné les mauvais outils pour faire face à nos erreurs, alors maintenant nous allons vous orienter vers des outils qui nous rapportent de l'argent."
Zenexer

19

Bien que l'utilisation de machines virtuelles soit le meilleur moyen de tester d'anciens IE, il est possible de ramener les anciens outils F12 en modifiant le registre car IE11 écrase cette valeur lorsque le nouvel outil F12 est activé.

Merci à l'impressionnant Dimitri Nickolas pour cette astuce. entrez la description de l'image ici

Cela fonctionne pour moi (enregistrer en tant que fichier .reg et exécuter):

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Toolbar\WebBrowser]
"ITBar7Layout"=hex:13,00,00,00,00,00,00,00,00,00,00,00,30,00,00,00,10,00,00,00,\
  15,00,00,00,01,00,00,00,00,07,00,00,5e,01,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,69,e3,6f,1a,8c,f2,d9,4a,a3,e6,2b,cb,50,80,7c,f1

8
Je ne sais pas si je dois être impressionné que quelqu'un ait réussi à trouver un moyen de pirater IE11 pour récupérer les anciens outils de développement, ou déprimé d'être prêt à sacrifier toutes les nouveautés incroyables des outils de développement IE11 juste pour le plaisir de pouvoir changer de mode navigateur. :-(
Spudley

7
Cela a tout à voir avec l'héritage de Microsoft de produire des navigateurs non conformes à la norme W3C. Il n'y a rien de mal avec IE10 ou 11 - ce sont de bons navigateurs modernes. Il s'agit de 9 et 8 et, jusqu'à récemment, de 7 et 6. Comme il est impossible de les installer aux côtés d'IE moderne dans Windows 8, un bon outil d'émulation est nécessaire.
Evgeny

1
L'astuce ici est intéressante, mais évidemment non prise en charge par Microsoft et pourrait avoir des effets secondaires involontaires.
EricLaw

5
Je ne pense pas du tout que ce soit inutile. Mon flux de travail lors du test d'IE consiste d'abord à utiliser le mode de compatibilité F12 et à étoffer tous les problèmes que je trouve, puis je me donne la peine de déclencher une VM. C'est beaucoup plus efficace que de faire tous les tests IE dans (différentes) VM.
ivarni

2
Pour que ce hack reg fonctionne pour moi, j'ai également dû mettre à jour la valeur ITBar7Layout64. Cela a fonctionné alors, mais la fermeture et l'ouverture des outils F12 ont planté IE :) Heureusement, j'ai fait une sauvegarde de la clé de registre.
Ian Yates

17

Vous pouvez l'obtenir en utilisant Emulation (Ctrl + 8) Mode Document (10,9,8,7,5), Profil du navigateur (Bureau, Windows Phone)

entrez la description de l'image ici


Merci de partager où trouver ça, j'étais perplexe! :)
Michelle

5

Moyen le plus simple, surtout si dans MSDN, des heures perdues de mon temps, stupide MS

http://support.microsoft.com/kb/2900662/en-us?sd=rss

  1. Ouvrez le volet Outils de développement. Pour ce faire, appuyez sur F12.
  2. Ouvrez l'écran Émulation. Pour ce faire, appuyez sur Ctrl + 8.
  3. Dans la liste Mode document sous Mode, cliquez sur 9.
  4. Dans la liste de chaînes de l'agent utilisateur sous Mode, cliquez sur Internet Explorer 9.

3
Juste un FYI courtois, essayez d'inclure les détails de la résolution, plutôt que de simplement fournir un lien. Si jamais le lien tombe en panne, la réponse est inutile pour une personne à l'avenir. Le lien est utile, mais conservez-le comme référence liée aux informations que vous incluez dans votre réponse détaillée .
Anil Natha

4

Vous pouvez contourner ce problème en définissant l'en X-UA-Compatible-tête méta pour la version spécifique d'IE avec laquelle vous déboguez. Cela changera le mode navigateur à la version que vous spécifiez dans l'en-tête.

Par exemple:

<meta http-equiv="X-UA-Compatible" content="IE=9" />

Pour que le mode navigateur se mette à jour sur les outils de développement, vous devez fermer [les outils de développement] et rouvrir. Cela passera à cette version spécifique.

Le passage d'une version mineure à une version supérieure fonctionnera très bien en actualisant, mais si vous souhaitez revenir d'une version supérieure à une version mineure, comme de 9 à 7, vous devrez ouvrir un nouvel onglet et charger le page à nouveau.

Voici une capture d'écran:

entrez la description de l'image ici


2

Dans IE11, nous pouvons changer l'agent utilisateur en IE10, IE9 et même en tant que Windows Phone. c'est vraiment bon


3
Cela change simplement la chaîne de l'agent utilisateur; cela ne change pas le comportement du navigateur. C'est complètement inutile pour les tests de compatibilité.
Zenexer

2

Comment ramener le «mode navigateur» dans IE11?

Un moyen facile de ramener est simplement d'aller à l'émulation (ctrl +8)

et modifiez la chaîne de l'agent utilisateur. (voir image ci-jointe)

entrez la description de l'image ici


Cela change simplement la chaîne de l'agent utilisateur; cela ne change pas le comportement du navigateur. C'est complètement inutile pour les tests de compatibilité. De plus, votre exemple utilise la compatibilité X-UA.
Zenexer

2

Microsoft a un outil juste à cet effet: Microsoft Expression Web. Il existe une version gratuite avec un tas de déchets de type FrontPage / Dreamweaver dont personne ne veut. Ce qui est important, c'est qu'il dispose d'une excellente fonctionnalité de test de navigateur. J'utilise Windows 8.1 Pro (version finale, pas d'aperçu) avec Internet Explorer 11. Je reçois ces navigateurs locaux :

  • Internet Explorer 6
  • Internet Explorer 7
  • Internet Explorer 11 /! \ Version non prise en charge (impossible de l'utiliser; grand whoop, j'ai le navigateur)

Ensuite, j'obtiens une option Remote Browsers (Beta). Je suis censé m'inscrire avec un e-mail valide, mais il y a une erreur de communication avec le serveur. Tant pis.

Firefox était auparavant pris en charge, mais je ne le vois pas maintenant. Peut-être se cacher.

Je peux comparer côte à côte entre les versions de navigateur. Je peux aussi comparer avec une image, ou apparemment, un fichier PSD (aucune idée à quel point cela fonctionne). InDesign serait bien, mais c'est probablement trop demander.

J'ai également partiellement installé la version complète d'Expression car Visual Studio Ultimate est sur le même ordinateur, alors j'apprécierais que quelqu'un confirme dans un commentaire que mon installation gratuite ne se met pas à niveau automatiquement.

Mise à jour: il semble que le service en ligne ait été interrompu , mais les navigateurs locaux sont toujours pris en charge. Vous pouvez également télécharger uniquement SuperPreview , sans les déchets de l'éditeur. Si vous voulez l'EDI complet, la dernière version est Microsoft Expression Web 4 (version gratuite) . Voici la liste officielle des navigateurs pris en charge . IE6 semble donner une erreur sur Windows 8.1, mais IE7 fonctionne.

Mise à jour du 09/12/2014: Microsoft a pratiquement renoncé à cela. Ne vous attendez pas à ce que cela fonctionne bien.


La dernière fois que j'ai regardé, Expression Web / Super Preview ne fournit que des instantanés statiques d'une page dans différents navigateurs. Bien que ce soit ce que veulent les concepteurs Web au pixel près, ce n'est pas ce que veulent les développeurs - nous voulons interagir avec les pages, déboguer js et CSS et manipuler le DOM, et c'est là que les outils de développement IE entrent en jeu.
saille

@saille Je ne l'ai pas sous les yeux pour le moment, mais je suis sûr que c'est interactif.
Zenexer
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.