Activación hasLayout en IE 6, ¿cuál es el efecto secundario del uso de * div html {altura: 1%; }

StackOverflow https://stackoverflow.com/questions/591870

Pregunta

Durante un tiempo, he estado poniendo * html div { zoom: 1; } en mi hoja de estilo de base, y ha funcionado muy bien. Sin embargo, ahora ejecutar en situaciones en las que hay elementos que son absoluta posicionadas que están perdiendo sus alturas y anchuras en IE 6 primo de este. Así que estoy pensando en poner * html div { height: 1%; } lugar, pero ¿cuáles son los efectos secundarios?

Actualización:

Gracias por todas sus respuestas. La respuesta es más probable que no hay efectos secundarios como todos ustedes dijeron.

Sin embargo, voy a tener que estar de acuerdo con todas las recomendaciones (en este momento) sobre cómo / cuándo desencadenar hasLayout. Veo hasLayout un comportamiento deseable y por lo tanto debería ser un comportamiento predeterminado en IE6 (y 7).

Se ha mencionado que es poco probable que no habría ningún efecto secundario, por la razón exacta, por qué no hacer que un comportamiento por defecto y sólo apagarlo cuando se produce un comportamiento no deseado (o nunca).

Uno puede hacerlo especificando {zoom: auto;} o {height:auto;} en ese elemento específico dependiendo de cómo se definió en la hoja de estilo base.

voy a tener que dar la respuesta a la primera persona que dijo que "no hay efectos secundarios", ya que la respuesta de todo el mundo es el mismo, mientras que algunos se fueron fuera de alcance. Gracias de nuevo!

¿Fue útil?

Solución

Esto se conoce como The Holly Hack . Por lo que yo sé, no es un efecto secundario, especialmente si se * html para IE6 directamente. Estoy de acuerdo con los otros críticos que colocarlo en la etiqueta <div> puede no ser la mejor elección - Me oriento los elementos individuales que están causando dolor

.

Otros consejos

Trato de minimizar el uso de este tipo de soluciones para evitar problemas imprevistos; Yo sólo lo uso en los elementos que se necesitan cuando IE6 rompe el planeo, nunca en todos los elementos de una página.

Asimismo, no creo que haya ningún efecto secundario. Sin embargo, como se ha mencionado - sólo lo uso en lo que necesita. Me gustaría personalmente ...

  1. Se usa sólo en una clase de conjunto:

    • html .haslayout {altura: 1%; }
  2. Coloque en una hoja de estilo IE 6 se incluye a través de un condicional comentario

Espero que ayude

Una altura de 1% no debe tener ningún efecto porque el IE trata dimensiones como min-dimensiones realmente. Sin embargo pos: abs es suficiente para dar hasLayout de todos modos y estoy de acuerdo con Jeroen que cubren las afirmaciones de este tipo no son sabios. Esto no es algo que desea en un restablecimiento CSS por ejemplo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top