11

estoy usando el siguiente IE comentarios condicionales:IE comentarios condicionales y Chrome/Firefox

<!--[if gt IE 7]> 
Here is some code. 
<![endif]--> 

Esto funciona muy bien para mantener el código de representación en cualquiera de IE inferior a 8.
Sin embargo, esto también mantiene el código de renderizado en Chrome y Firefox.

¿Alguna idea sobre por qué sucede esto y cómo puedo obtener el código para renderizar en navegadores que no sean IE?

Respuesta

42

Los comentarios condicionales son una regla específica de Microsoft IE, y no son parte de ningún estándar. Si se comprueba la estructura de un comentario condicional:

<!--[if gt IE 7]> 
Here is some code. 
<![endif]--> 

Como implicaría su nombre, que es todo lo que un gran comentario <!-- comment -->. IE comprueba los comentarios de condiciones como estas que, una vez más, no cumplen con los estándares HTML.

para crear el código que no rinden en el IE, pero deja sin contenido en otros navegadores, se utiliza el siguiente condicional:

<!--[if !IE]> --> 
This will be rendered by anything but IE. 
<!-- <![endif]--> 

ver cómo se adjuntan las condiciones en los comentarios cerrados? Es por eso que se representa en navegadores normales, mientras que IE busca el condicional y decide omitir todo hasta el endif.

EDITAR

Si desea agregar otra condición, y seguir haciendo que el código en los navegadores no-IE, se puede utilizar la siguiente solución:

<!--[if gt IE 7]> <!-- --> 
Here is some code for anything but IE 7 and below. 
<!-- <![endif]--> 

Nota tuve que usar abrir el comentario de nuevo para evitar que IE muestre --> antes del código. Otros navegadores aún lo considerarán parte del comentario.

+0

Quiero que el código aparezca para IE 8 e IE 9 simplemente no hay versión de IE antes de eso. También quiero que el código aparezca en Chrome y Firefox. – Baxter

+1

Siempre y cuando cierre los comentarios, supongo que debería funcionar para cualquier condición. – zebasz

+1

Lo probé, no funciona del todo. Encontré una solución alternativa, así que la editaré y la agregaré. – zebasz

Cuestiones relacionadas