Actualización de octubre de 2015
Esta respuesta se publicó hace varios años y ahora la pregunta realmente debería ser ¿ debería considerar usar la X-UA-Compatible
etiqueta en su sitio? con los cambios que Microsoft ha realizado en sus navegadores (más sobre los siguientes).
Dependiendo de los navegadores de Microsoft que admita, es posible que no necesite continuar usando la X-UA-Compatible
etiqueta. Si necesita admitir IE9 o IE8, le recomendaría usar la etiqueta. Si solo es compatible con los navegadores más recientes (IE11 y / o Edge), consideraría descartar esta etiqueta por completo. Si usa Twitter Bootstrap y necesita eliminar las advertencias de validación, esta etiqueta debe aparecer en el orden especificado. Información adicional a continuación:
La X-UA-Compatible
metaetiqueta permite a los autores web elegir en qué versión de Internet Explorer se debe representar la página. IE11 ha realizado cambios en estos modos; vea la nota IE11 a continuación. Microsoft Edge , el navegador que reemplazó a IE11, solo honra la X-UA-Compatible
metaetiqueta en ciertas circunstancias. Vea la nota de Microsoft Edge a continuación.
Según Microsoft, al usar la X-UA-Compatible
etiqueta, debe estar lo más alto posible en su documento head
:
Si está utilizando la etiqueta META compatible con X-UA, desea colocarla lo más cerca posible de la parte superior del HEAD de la página. Internet Explorer comienza a interpretar el marcado usando la última versión. Cuando Internet Explorer encuentra la etiqueta META compatible con X-UA, comienza de nuevo usando el motor de la versión designada. Este es un golpe de rendimiento porque el navegador debe detener y reiniciar el análisis del contenido.
Aquí están tus opciones:
- "IE = borde"
- "IE = 11"
- "IE = EmulateIE11"
- "IE = 10"
- "IE = EmulateIE10"
- "IE = 9"
- "IE = EmulateIE9
- "IE = 8"
- "IE = EmulateIE8"
- "IE = 7"
- "IE = EmulateIE7"
- "IE = 5"
Para intentar entender lo que cada uno significa, aquí hay definiciones proporcionadas por Microsoft:
Internet Explorer admite varios modos de compatibilidad de documentos que permiten diferentes funciones y pueden afectar la forma en que se muestra el contenido:
El modo Edge le dice a Internet Explorer que muestre contenido en el modo más alto disponible. Con Internet Explorer 9, esto es equivalente al modo IE9. Si una versión futura de Internet Explorer admitiera un modo de compatibilidad más alto, las páginas configuradas en modo borde aparecerían en el modo más alto admitido por esa versión. Esas mismas páginas seguirían apareciendo en modo IE9 cuando se visualizan con Internet Explorer 9. Internet Explorer admite varios modos de compatibilidad de documentos que permiten diferentes funciones y pueden afectar la forma en que se muestra el contenido:
El modo IE11 proporciona el soporte más alto disponible para los estándares establecidos y emergentes de la industria, incluidos HTML5, CSS3 y otros.
El modo IE10 proporciona el soporte más alto disponible para los estándares establecidos y emergentes de la industria, incluidos HTML5, CSS3 y otros.
El modo IE9 proporciona el soporte más alto disponible para estándares establecidos y emergentes de la industria, incluyendo HTML5 (Borrador de trabajo), Especificación de nivel 3 de hojas de estilo en cascada W3C (Borrador de trabajo), Especificación de gráficos vectoriales escalables (SVG) 1.0 y otros. [Nota del editor: IE 9 no admite animaciones CSS3].
El modo IE8 admite muchos estándares establecidos, incluida la especificación de nivel 2.1 de hojas de estilo en cascada W3C y la API de selectores W3C; también proporciona soporte limitado para la Especificación de Nivel 3 de Hojas de Estilo en Cascada W3C (Borrador de Trabajo) y otros estándares emergentes.
El modo IE7 representa el contenido como si Internet Explorer 7 lo mostrara en modo estándar, independientemente de si la página contiene una directiva.
El modo Emulate IE9 le dice a Internet Explorer que use la directiva para determinar cómo representar el contenido. Las directivas en modo estándar se muestran en modo IE9 y las directivas en modo peculiar se muestran en modo IE5. A diferencia del modo IE9, el modo Emulate IE9 respeta la directiva.
El modo Emular IE8 le dice a Internet Explorer que use la directiva para determinar cómo representar el contenido. Las directivas en modo estándar se muestran en modo IE8 y las directivas en modo peculiar se muestran en modo IE5. A diferencia del modo IE8, el modo Emulate IE8 respeta la directiva.
El modo Emular IE7 le dice a Internet Explorer que use la directiva para determinar cómo representar el contenido. Las directivas del modo estándar se muestran en el modo estándar de Internet Explorer 7 y las directivas del modo peculiar se muestran en el modo IE5. A diferencia del modo IE7, el modo Emulate IE7 respeta la directiva. Para muchos sitios web, este es el modo de compatibilidad preferido.
El modo IE5 procesa el contenido como si Internet Explorer 7 lo mostrara en modo peculiar, que es muy similar a la forma en que se mostró el contenido en Microsoft Internet Explorer 5.
NOTA de IE10: a partir de IE10, el modo de peculiaridades se comporta de manera diferente que en versiones anteriores del navegador. En IE9 y versiones anteriores, el modo peculiar restringió la página web a las funciones compatibles con IE5.5. En IE10, el modo peculiar se ajusta a las diferencias especificadas en la especificación HTML5.
Personalmente, siempre elijo la http-equiv="X-UA-Compatible" content="IE=edge"
metaetiqueta, ya que las versiones anteriores tienen muchos errores, y no quiero que IE decida entrar en "Modo de compatibilidad" y muestre mi sitio como IE7 vs IE8 o 9. Siempre prefiero la última versión de ES DECIR.
IE11
De Microsoft :
Comenzando con IE11, el modo de borde es el modo de documento preferido; Representa el soporte más alto para los estándares modernos disponibles para el navegador.
Use la declaración de tipo de documento HTML5 para habilitar el modo borde:
<!doctype html>
El modo Edge se introdujo en Internet Explorer 8 y ha estado disponible en cada versión posterior. Tenga en cuenta que las funciones admitidas por el modo borde están limitadas a las admitidas por la versión específica del navegador que representa el contenido.
A partir de IE11, los modos de documento están en desuso y ya no deberían usarse, excepto de forma temporal. Asegúrese de actualizar los sitios que se basan en características heredadas y modos de documentos para reflejar los estándares modernos.
Si debe apuntar a un modo de documento específico para que su sitio funcione mientras lo vuelve a trabajar para admitir estándares y funciones modernas, tenga en cuenta que está utilizando una función de transición, una que puede no estar disponible en futuras versiones.
Si actualmente usa el encabezado compatible con x-ua para apuntar a un modo de documento heredado, es posible que su sitio no refleje la mejor experiencia disponible con IE11.
Microsoft Edge (Reemplazo para Internet Explorer que viene incluido con Windows 10)
Información sobre la X-UA-Compatible
metaetiqueta para la versión "Edge" de IE. De Microsoft :
Presentamos el modo de documento Edge "vivo"
Como anunciamos en agosto de 2013, estamos despreciando los modos de documentos a partir de IE11. Con nuestras últimas actualizaciones de plataforma, la necesidad de modos de documentos heredados se limita principalmente a las aplicaciones web heredadas de Enterprise. Con nuevos cambios arquitectónicos, estos modos de documentos heredados se aislarán de los cambios en el modo Edge "vivo", lo que ayudará a garantizar un nivel mucho más alto de compatibilidad para los clientes que dependen de esos modos y nos ayudará a avanzar aún más rápido en las mejoras en Edge . IE seguirá respetando los modos de documento que sirven los sitios de intranet, los sitios en la lista Vista de compatibilidad y cuando se usan solo con el Modo de empresa.
Los sitios públicos de Internet se mostrarán con la nueva plataforma de modo Edge (ignorando X-UA-Compatible). Nuestro objetivo es que Edge sea el modo de documento "vivo" a partir de ahora y no se introducirán más modos de documento en el futuro.
Con los cambios en Microsoft Edge para dejar de admitir modos de documentos en la mayoría de los casos, Microsoft tiene una herramienta para escanear su sitio para verificar y ver si tiene un código que no sea compatible con Edge.
Chrome = 1 Información para IE
También hay chrome=1
que se puede utilizar o utilizar junto con una de las opciones anteriores como: <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
. chrome=1
es para Chrome Frame de Google, que se define como:
Google Chrome Frame es un complemento de navegador de código abierto. Los usuarios que tienen el complemento instalado tienen acceso a las tecnologías web abiertas de Google Chrome y al veloz motor JavaScript cuando abren páginas en el navegador.
Google Chrome Frame mejora a la perfección su experiencia de navegación en Internet Explorer. Muestra los sitios habilitados para Google Chrome Frame que utilizan la tecnología de renderizado de Google Chrome, lo que le brinda acceso a las funciones HTML5 más recientes, así como a las funciones de rendimiento y seguridad de Google Chrome sin interrumpir de ninguna manera el uso habitual de su navegador.
Cuando se instala Google Chrome Frame, la web mejora sin que tenga que pensarlo.
Pero para que ese complemento funcione, debe usarlo chrome=1
en la X-UA-Compatible
metaetiqueta.
Puedes encontrar más información sobre Chrome Frame aquí .
Nota: Google Chrome Frame solo funciona para IE6 hasta IE9 y se retiró el 25 de febrero de 2014. Puede encontrar más información aquí . Gracias a @mck por el enlace.
Validación:
HTML5 :
La página se validará usando el Validador W3 solo cuando se use <meta http-equiv="X-UA-Compatible" content="IE=Edge">
. Para otros valores arrojará el error: A meta element with an http-equiv attribute whose value is X-UA-Compatible must have a content attribute with the value IE=edge.
en otras palabras, si lo tiene IE=edge,chrome=1
no se validará. Ignoro este error por completo ya que los navegadores modernos simplemente ignoran esta línea de código.
Si debe tener un código completamente válido, considere hacerlo en el nivel del servidor configurando el encabezado HTTP. Como nota, Microsoft dice: If both of these instructions are sent (meta and HTTP), the developer's preference (meta element) takes precedence over the web server setting (HTTP header).
Vea la respuesta de olibre o la respuesta de bitinn para obtener más detalles sobre cómo configurar un encabezado HTTP.
XHTML
No hay un problema con la validación cuando se usa <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
siempre que la etiqueta esté cerrada correctamente (es decir, />
vs >
).
Twitter Bootstrap
Esta etiqueta ha sido muy recomendada por el equipo de Bootstrap desde al menos 2014, y Bootlint , el linter creado por el equipo twbs continúa lanzando una advertencia cuando se omite la etiqueta. La interfaz distingue entre advertencias y errores, y como tal, la gravedad de omitir esta etiqueta puede considerarse menor.
Para obtener más información, X-UA-Compatible
consulte el sitio web de Microsoft que define la compatibilidad de documentos .
Para obtener más información sobre qué es compatible con IE, visite caniuse.com .
Para obtener más información sobre los requisitos de Bootstrap de Twitter, consulte la página wiki del proyecto bootlint .