5.1.1.

22 marzo 2005

El hack del guión bajo en Internet Explorer

Categorí­a

Una de las tantas formas de ocultar propiedades de CSS a Internet Explorer es lo que se conoce como hack del guión bajo y consiste en agregar este caractér al comienzo del nombre de una propiedad.

Normalmente el navegador debería ignorar aquellas propiedades que desconoce. Por tanto, el siguiente ejemplo debería ser ignorado.

p {_color: red;}

Mientras el resto de los navegadores toman a _color como una propiedad desconocida, Internet Explorer la reconoce como la conocidad propiedad color.

p {
color: green; /* leido por todos los navegadores */
_color: red; /* Sólo para Internet Explorer */
}

Hay que usar este hack con precaución, porque las reglas de cascada siguen vigentes. Dicho de otra manera, como Internet Explorer leería ambas lineas, una puede redefinir a la otra.

p {
_color: green; /* Sólo Internet Explorer */
color: red; /* Internet Explorer redefine el color */
}

La queja del validador

Si intentan validar una hoja de estilo que incluya este hack, el validador les dirá que no es valido. Técnicamente no es válido si se compara con la lista de propiedades existentes, pero sí es legal porque contaría como extensión propietaria según la especificación CSS2.1.

Vendor-specific extensions

In CSS2.1, identifiers may begin with '-' (dash) or '_' (underscore). Keywords and property names, beginning with -' or '_' are reserved for vendor-specific extensions.

¿Error de Internet Explorer?

Ni tanto. Aunque la conducta de Internet Explorer va claramente contra las reglas.

Rules for handling parsing errors

Unknown properties: User agents must ignore a declaration with an unknown property.

Más bien parece otro de sus metodos para hacer más fácil la vida de los demás al recuperarse de manera tan silenciosa al error del diseñador.

Powered by Blogger