2009-11-10 5 views
0

J'ai une disposition d'en-tête/wrapper où les deux div divisent en position absolue, et en charge je calcule la propriété supérieure de l'en-tête et la propriété height du wrapper pour s'assurer que le contenu est défilant dans l'encapsuleur (overflow est défini sur auto). Pour une raison quelconque sur IE7 +, une fois le contenu chargé et le calcul effectué pour définir le haut/la hauteur des divs, il "cache" l'encapsuleur et seul l'en-tête est affiché ... jusqu'à ce que vous redimensionniez la fenêtre, même légèrement - résultant dans l'affichage correct de l'en-tête/emballage.position absolue div avec débordement cache en charge (IE7 +)

Cela peut-il être lié aux propriétés de débordement? Il n'y a pas d'erreurs JS dans la console et il semble que la page sur IE ne rend pas le débordement correctement.

Toute pensée ou suggestions seraient appréciées ...

+0

Si je supprime les propriétés de débordement de l'emballage, il s'affiche très bien, donc il est certainement lié à un débordement de css pour IE –

+0

quand faites-vous les calculs sur charge ou dom prêt? – Les

+0

sur dom ready- et je m'assure d'abord que l'élément dom im définissant les propriétés css est disponible. ex: if ($ ('div # wrapper'). longueur) –

Répondre

1

OK, donc je l'ai résolu ce problème et pensé que je répondrais comme une réponse au cas où quelqu'un d'autre vient sur des questions similaires.

Il s'agit en fait d'un bug IE8 et il s'agit de la combinaison des propriétés css définies sur un élément (en particulier avec overflow, max-width, etc) ... Voici une description du ou des bug (s) réel (s) Quoi qu'il en soit, j'ai corrigé ce problème en supprimant la propriété overflow du CSS et en le définissant par DOM juste avant la balise de fermeture du corps, pour m'assurer qu'il n'y aurait aucun conflit avec d'autres propriétés CSS. .