internet explorer - page - ¿Forzar IE10 para ejecutarse en la Vista de compatibilidad IE10?
internet explorer document mode (8)
Tengo una aplicación que está rota en IE10 pero funciona bien en la Vista de compatibilidad IE10. Un rápido Google resultados en el
<meta http-equiv="X-UA-Compatible" content="IE=8">
<!-- plus variations such as emulate, quirks, 7, 8, 9 --->
etiqueta. Parte de la documentación de MS en la etiqueta está here . Si presiona F12, puede ver que cambia el modo de documento. Lo necesito para cambiar el modo del navegador a la vista de compatibilidad de Internet Explorer 10. ¿Hay alguna etiqueta que haga esto?
ACTUALIZACIÓN Necesito mencionar que probé todos los siguientes tipos de documento y ninguno de ellos funciona. Creo que la única forma de hacer que esto funcione en IE10 es usar la Vista de compatibilidad.
<!--
<!DOCTYPE html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
TRIED NO DOCTYPE AT ALL TOO
-->
El elemento meta
X-UA-Compatible
solo cambia el modo Documento, no el modo Navegador. El modo Navegador se elige antes de solicitar la página, por lo que no hay forma de incluir ningún marcado, JavaScript o algo así para cambiar esto. Mientras que el modo Documento vuelve a los estándares más antiguos y modos extravagantes del motor de renderizado, el modo Navegador simplemente cambia cosas como la forma en que se identifica el navegador, como la cadena del agente de usuario.
Si desea cambiar el modo del navegador para todos los usuarios (en lugar de cambiarlo manualmente en las herramientas o a través de la configuración), la única forma (AFAICT) es que su sitio se agregue a la Lista de vistas de Copat de Microsoft. Microsoft lo mantiene para aplicar anulaciones a sitios que se rompen. Hay información sobre cómo eliminar su sitio de la lista de compatibilidad , pero no puedo encontrar ninguno para solicitar que lo agreguen.
Sin embargo, el método preferido es tratar de solucionar cualquier problema en el sitio primero, ya que cuando no se ejecuta utilizando el último documento y el modo de navegador no puede aprovechar las mejoras en el navegador, como un mayor rendimiento.
Mira aquí:
Utilizar
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE10">
Lo intenté y mostró el modo de compatibilidad IE10 en la ventana de depuración.
Puedes probar :
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" >
Tal como lo intentó antes, pero cuidado:
Parece que la etiqueta X-UA-Compatible debe ser la primera etiqueta en la sección <head>
Si esta conclusión es correcta, entonces creo que no está documentada en los blogs / msdn de Microsoft (y si está documentada, entonces no está sobresaliendo lo suficiente de los documentos). Asegurando que esta fue la primera etiqueta meta en el IE9 forzado para cambiar al modo IE8 con éxito
Si bien debe arreglar su sitio para que funcione sin Vista de compatibilidad, intente poner la metaetiqueta X-UA-Compatible
como lo primero después de la apertura <head>
, antes del título
Si desea establecer el modo de compatibilidad en el navegador y no en el html, haga lo siguiente
- Abre IE 10
- Presiona la tecla ALT para que aparezca la barra de menús de IE
- Haga clic en el menú Herramientas
- Haga clic en la configuración de vista de compatibilidad.
- Clics marca la casilla; mostrar todos los sitios web en vista de compatibilidad o
- Agregue solo los sitios web deseados a la vista de compatibilidad
Como se muestra en la imagen a continuación. El sitio web debería abrirse con la vista de compatibilidad de IE 10.
Tuve exactamente el mismo problema, esto - "meta http-equiv =" X-UA-Compatible "content =" IE = 7 ">" funciona muy bien en IE8 e IE9, pero no en IE10. Existe un error en los archivos de definición del navegador del servidor que se incluyen con .NET 2.0 y .NET 4, es decir, que contienen definiciones para un cierto rango de versiones de navegador. Pero las versiones para algunos navegadores (como IE 10) ya no están dentro de esos rangos. Por lo tanto, ASP.NET los ve como exploradores desconocidos y se predetermina a una definición de nivel inferior, que tiene ciertos inconvenientes, como que no admite funciones como JavaScript.
Mi agradecimiento a Scott Hanselman por esta solución.
Aqui esta el link -
Esta corrección MS KP solo agrega archivos faltantes a asp.net en su servidor. Lo instalé y reinicié mi servidor y ahora funciona perfectamente. Pensé que MS habría dado a esta solución una distribución más amplia.
Almiar
Yo tuve el mismo problema. El problema es un error en MSIE 10, por lo que decirle a la gente que solucione sus problemas no es útil. Tampoco le está diciendo a los visitantes de su sitio que agreguen su sitio a la vista de compatibilidad, bleh. En mi caso, el problema era que el siguiente código no mostraba texto:
document.write (''<P>'');
document.write (''Blah, blah, blah... '');
document.write (''</P>'');
Después de mucho ensayo y error, determiné que quitar las etiquetas <P> y </ P> hacía que el texto apareciera correctamente en la página (por lo tanto, el problema ES con el modo documento en lugar del modo navegador, al menos en mi caso). Quitar las etiquetas <P> cuando userAgent es MSIE no es una "solución" que quiero poner en mis páginas.
La solución, como han dicho otros, es:
<!DOCTYPE HTML whatever doctype you''re using....>
<HTML>
<HEAD>
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">
<TITLE>Blah...
Sí, la metaetiqueta debe ser la PRIMERA etiqueta después de HEAD.