T&A — Bug de l’élément qui revient à la ligne alors que les largeurs définies en pourcentage de tous les éléments sont correctes (IE6)

Bon, je me suis dit que je devrais être un peu plus bavard concernant mes astuces et recherches dans la programmation web. Et Virtools, peut-être aussi, mais pas tout de suite… sauf si vous êtes justement à la recherche d’une solution à un problème de Virtools, auquel cas, je me ferais un plaisir de vous répondre (gratuitement bien sûr).

Je vais commencer par un petit bug étrange dans Internet Explorer 6 qui fait qu’un élément semble clignoter quand on redimensionne en largeur la fenêtre, alors qu’en fait, l’élément se balade entre sa bonne position et une position plus en bas de la page. Cela est dû, probablement, à un problème d’arrondi, surtout si le width est défini en pourcentage.

Par exemple, width:50%; sur une fenêtre à largeur impaire, 351px par exemple, va donner une taille de 126px dans IE6 au lieu de 125.5px. Ce qui pousse l’élément flottant au-delà de la fenêtre, et donc le fait descendre dans la page.

Après mes tests, j’ai deux colonnes, l’un à width:50%;, l’autre à width:49.9999%;. Et cela suffit pour que IE6 ne fasse plus chier à ce sujet.

Évidemment, il va rester ce 0.0001% qui va se balader en trop on ne sait où. Mais vu que, dans mon cas, j’ai deux colonnes qui devaient être à 50% à la base (et donc ils prennent 100% de la largeur), cela fait que le prochain élément visuel dispose forcément de la propriété clear:both|left|right; pour annuler le flottement des éléments qui suivent.

Published by Dakwamine

Dakwamine, alias Quang-Minh Dang, né en 1987 en région parisienne. Un type sympa, pas bavard et pragmatique.