CSS: comentarios condicionales

Los comentarios condicionales son el último recurso al que podemos acceder cuando ya no encontramos ninguna alternativa para que nuestra página web se vea correctamente en cualquier navegador.

Aunque sólo funcionan en Internet Explorer, esto es más que suficiente ya que es este el navegador que más inconvenientes nos provoca.

La estructura es similar a un comentario HTML (<!-- [comentario] -->) y los navegadores, actúan en consecuencia, ignorando el contenido, sin embargo, Internet Explorer está programado para reconocer la siguiente sintaxis:
<!--[if IE]>
[instrucciones]
<![endif]-->
y procesar el contenido como si fuera una parte normal del contenido de la página.

Una limitación de estos comentarios condicionales es que sólo pueden ser incluidos dentro de un documento HTML y no dentro de una hoja de estilo CSS.

Debido a que hay múltiples versiones, las condiciones pueden ser complejas:
<!--[if IE]>
cualquier versión
<![endif]-->

<!--[if IE 5]>
Internet Explorer 5
<![endif]-->

<!--[if IE 5.0]>
Internet Explorer 5.0
<![endif]-->

<!--[if IE 5.5]>
Internet Explorer 5.5
<![endif]-->

<!--[if IE 6]>
Internet Explorer 6
<![endif]-->

<!--[if IE 7]>
Internet Explorer 7
<![endif]-->
También es posible establecer condiciones para versiones superiores o inferiores. Para ello, como no podemos utilizar los símbolos < o > , debemos reemplazarlos por sus equivalentes: (mayor que), gtlt (menor que), gte (mayor o igual que) y lte (menor o igual que):
<!--[if gte IE 5]>
Internet Explorer 5 o superior
<![endif]-->

<!--[if lt IE 6]>
Internet Explorer menor que 6
<![endif]-->

<!--[if lte IE 5.5]>
Internet Explorer menor o igual que 5.5
<![endif]-->

<!--[if gt IE 6]>
Internet Explorer mayor que 6
<![endif]-->
A decir verdad, el uso de estos hacks no está recomendado, cualquier purista del lenguaje los rechaza pero, personalmente, no dudo en usarlos si no queda otro remedio, algo que, cada vez, parece más ocurrir cada vez más seguido.

9 comentarios:

Anónimo

Como podria poner unos de estos en mi blog hablo de esto para dejar a si de facil comentarios esatria de 10

JMiur

El nuevo modelo de comentarios está explicado en este post y en este otro.

Anónimo

estoy maqtand una pag en css, en IE7 s ve bien, en ff2 tambien pero en FF3 no... como puedo hacer para arreglar esto GRACIAS

JMiur

Si no puede verse el problema online ... es imposible.

Raul

Pero lo que tú dices es que lo que pongamos en [instrucciones] lo hará IE pero no lo hará otro navegador ¿no? ¿y si quiero que IE siga unas instrucciones y los otros navegadores sigan otras? ¿habría que añadir en medio algún else?

JMiur

No, no existe tal cosa, esto es sólo aplicable a IE y con ciertas limitaciones.

Raul

¿Y no existe algún IF NO IE o algo parecido?

JMiur

No, no existe nada de eso. Sólo usando JavaScript.

¿Quiere dejar un comentario?

Hay varios métodos posibles.

Uno de ellos es el formulario de comentarios que tan generosamente nos ha regalado Blogger y que funciona sólo de tanto en tanto. Su uso es aconsejable sólo en caso de ser una de esas personas a las que les gustan los retos y los desafíos.
¿No quiere arriesgarse? Haga click para ocultarlo y utilice las otras opciones.

Si le gusta ir a lo seguro utilice este botón para abrir los comentarios en una ventana modal en esta misma pagina.

Si añora tiempos idos, use este enlace para agregar un comentario al viejo estilo ...

Los comentarios están siendo moderados y serán publicados a la brevedad.