mardi 10 juillet 2007

[IE6] Bug affichage: float + texte qui disparait

Une petite astuce/aide mémoire. Un bug récurrent sous ie6: du texte qui apparait et disparait en faisant F5 sur une page, avec un contenu en float.
Merci à Laurent denis sur le forum alsacréation qui donne la raison, et la correction du bug
A priori, l'explication est un bug de reflow, liée au haslayout. Autrement-dit, en clair, c'est un trou de mémoire du moteur de rendu d'IE, qui se produira de manière très imprévisible selon la machine, la connection, l'âge du capitaine et la taille de la baleine.

Pour s'en assurer et corriger, tester des propriétés "zoom: 1" sur les éléments en flux qui disparaissent à côté des images. Si le bug se raréfie ou disparaît, faire une CSS en commentaires conditionnelle pour y mettre ces "zoom: 1". Si en outre le problème doit être résolu aussi dans IE5.0 (qui ne connaît pas zoom), faire de même en remplaçant zoom par une des autres propriétés conférant le haslayout: height: 1% est souvent un bon candidat.

Il est également possible d'éliminer le bug, dans certains cas, en supprimant un background du conteneur ou d'un des éléments concernés, et en le reportant à un autre niveau.
Source: http://forum.alsacreations.com/topic-1-16213-1-Float--texte-qui-disparait-rsolut.html

il suffit donc de mettre un:
#toto{
zoom: 1
}


Et ca marche!!

4 commentaires:

Karim ! a dit…

Merci pour l'astuce, tres utile en effet :D
Merci à alsacreations ... et à Google xD ... sans oublier IE6 et sa chiée + 12 de bugs.

Orangetanguine a dit…

De rien!
On passe souvent du temps sur ces égarements d'IE...

Jona a dit…

En effet ca marche! merci a tous les contributeurs ;)

Unknown a dit…

Mais ce n'est pas valide w3c... Il y a-t-il une alternative valide au zoom ?