¿Cómo hacer para que “css posición: fija” funcione en IE 7+ con doctype TRANSITIONAL?

Sé que position:fixed; no fue compatible con IE hasta IE 7, y solo funciona en IE 7 si tiene un STRICT DOCTYPE .

Mi pregunta es: “¿Cómo puedo hacer que funcione con IE 7 con TRANSITIONAL DOCTYPE ?”

Por favor no sugiera cambiar un DOCTYPE , ya que esto no responde mi pregunta, gracias.

No necesita un DOCTYPE estricto para soporte fixed . Solo necesita un DOCTYPE que activa el modo estándar (o “casi estándares”). Eso puede ser un tipo de documento de transición como:

  

o XHTML:

  

siempre que se incluya el ID del sistema (el URI al final).

Si sus páginas realmente se basan en el modo Quirks (ugh!), Lo siento, pero no puede usarlo fixed y tendrá que recurrir a hacks de JavaScript (pero puede que necesite los de IE6 de todos modos).

La posición fija no funciona para mí, incluso con los tipos de documento Transitional / Strict Doc. Sin embargo, estoy usando IE9 en modo de compatibilidad y se supone que debe representarse utilizando las bibliotecas de tiempo de ejecución de IE8. Para solucionar este problema, tuve que agregar el siguiente CSS al elemento.

 .elementToBeFixed { position: fixed; top: 0; left: 0; } 

No funciona si faltan Top o Left, tiene que establecerlos explícitamente en cero (o su valor deseado) para que funcione en todas las versiones de IE … No hace falta decir que IE es una mierda.