He intentado con los diversos métodos sugeridos por el artículo de MSDN en http://msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx con respecto a obligar a IE9 a emular una versión anterior con el encabezado compatible con X-UA para mostrar correctamente.
En mi caso, la prueba es reproducir un archivo de video MP4 en un navegador IE9 que está utilizando el modo estándar predeterminado en lugar del modo de compatibilidad. Otros sitios web han dicho que Internet Explorer solo está configurado para reproducir archivos MP4 (en lugar de archivos de video ogg y webm), así que supuse que sería el formato de archivo más seguro para probar.
He probado la vista de la página web utilizando IE9 emulando el estándar IE8 y las vistas estándar IE7 de esa página, y en ambos casos, las vistas estándar anteriores funcionaron para reproducir el archivo de video MP4. Y el modo de compatibilidad IE9 también jugó esa página web. Pero obligué al IE9 a volver a la vista estándar para probar un código que funcionaría para reproducir el video para aquellos que no habían configurado su propio navegador IE9 para usar el modo de compatibilidad.
Los métodos sugeridos por ese artículo de MSDN mencionado anteriormente parecen estar dirigidos a este problema, pero al probar cada uno de esos métodos, ninguno de ellos solucionó el problema de un navegador IE9 reproduciendo un archivo de video MP4.
La solución a mi problema provenía de este billete de desbordamiento de pila: HTML5 Video not working only in IE9
que en realidad tenía que añadir las siguientes líneas al archivo .htaccess en el sitio web:
AddType video/ogg .ogv
AddType video/mp4 .mp4
AddType video/mp4 .mov
AddType video/webm .webm
Entonces, también necesitaba para asegurarse de que la primera línea de código utiliza esto:
<!DOCTYPE html>
... en lugar de esto:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
que no necesitaba usar cualquier parte del código "versión anterior" como este:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">
En mi página de prueba, también se utiliza el código video-js, que había asumido haría cargo de el problema estándar IE9 (como lo había sido para otros navegadores web). Su propio código parece tener también los siguientes códigos de salida X-UA-Compatible:
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta http-equiv="X-UA-Compatible" content="IE=9" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
Sin embargo, estos códigos por sí sola no resuelve el problema. En última instancia, creo que se debió a la adición del código al archivo .htaccess.
Probé todos los modos de compatibilidad de documentos, pero eso no tiene ningún impacto en los problemas que tiene la página. En realidad, solo funciona cuando el modo del navegador está establecido explícitamente en la vista de compatibilidad. –
@FlorianPeschka Agregué todos los factores conocidos que desencadenan el modo de compatibilidad: definitivamente no son fáciles de conseguir y no creo que nadie realmente quiera usarlos a propósito, pero definitivamente sí funcionan. – Razor
Bien. Esperaba poder evitar tener que depurar la aplicación, pero en ese caso, supongo que esa es la única opción. Gracias por el esfuerzo sin embargo. –