A principios de mes comentábamos como el equipo de desarrollo de Internet Explorer se había hecho atrás en su decisión de no activar por defecto el motor de rendering de páginas de Internet Explorer 8, usándolo solo para aquellas páginas que lo pidiesen explícitamente, tras el tremendo alboroto que dicha decisión había provocado en las filas de los «estandaristas», comunidad a la que, precisamente, Microsoft pretende agradar expresamente con el lanzamiento de IE8.
Comentábamos entonces que la decisión tomada para «no romper la web», implementada en la primera beta pública del navegador, era incorporar un botón «Emular IE7» que el usuario puede pulsar en cualquier momento. Una vez pulsado, IE8 pasará a comportarse como IE7, eliminando los problemas que pudiera causar algún hack pensado para IE7 al pasar por el motor de IE8. Y nos quedamos tan panchos. Pero en segunda consideración, la solución tampoco nos parece fantástica: una vez pulsado el botón y revertido el comportamiento de la versión 8 a la de la 7… el nuevo e inmaculado motor de rendering quedará enterrado para no resucitar jamás, casi con total probabilidad. Así que… ¿para qué tomarse tanto esfuerzo en diseñarlo, en primer lugar? Podría argumentarse que Microsoft debería cambiar el botón a un «Emular IE7 para este sitio web». Sería una mejora, desde luego, pero obligaría a tener en ejecución dos motores simultáneamente, lo que resulta en un inútil derramamiento de recursos del ordenador y, además, también condenaría a muchas páginas a vivir para siempre sin los beneficios de IE8.
Ahora me apropio (o robo, mejor dicho) una idea de hermanito: podemos suponer (habría que verificarlo, naturalmente) que la mayoría de páginas que rompen IE8 pero no IE7 (esto es, las que asustan a los desarrolladores de Explorer) lo hacen pasándole unos cuantos «hacks» bastante poco respetuosos con los estándares… después de olerse que el navegador es Explorer. La página pasada al resto de navegadores (no solo Firefox, sino también Opera, Safari y demás) no contiene toda esa «basura nociva». Con lo cual, bastaría cambiar el «user-agent» de IE8 para solucionar buena parte del problema. Hasta ahora Internet Explorer se identifica con una cadena del tipo Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; bgft)
. Poner, por ejemplo, Mozilla/4.0 (compatible; IExplorer 8.0; Windows NT 5.1; bgft)
no dificultaría apenas distinguir el navegador de Microsoft de todo el resto y ayudaría a poner un poco de orden en todo este embrollo.
Estoy seguro de que la solución tampoco es óptima, pero no deja de ser una propuesta…