Android 2.3 Stock Browser: Inline-block n’étend pas sur l’événement “orientationchange”

J’ai actuellement un problème intéressant avec mon site Web en ce qui concerne les changements d’orientation sur Android 2.3. C’est ssortingctement pour mobile, avec le support nécessaire pour Android 2.3+ navigateur de stock. Voir ci-dessous..

HTML:

CSS:

 #wrapper { text-align: center; } #parent { display: inline-block; text-align; left; } .dummy { display: block; height: 0; } 

JQuery:

 $(window).resize(function () { clearTimeout(resizeTimeout); resizeTimeout = setTimeout(function(){ $("#parent > .dummy").remove(); var currentOffset = $("#parent > #child:first-child").offset().top; $("#parent > #child").each(function() { if (currentOffset != $(this).offset().top) { $("
").insertBefore(this); currentOffset = $(this).prev().offset().top; } }); }, 500); }); $(window).bind("orientationchange", function() { $(window).resize(); });

Fondamentalement, le code parent ci-dessus contient un tas de divs inline-block . le wrapper centre le parent et toute division enfant qui passe à la ligne suivante laisse le parent aligné. Cela fonctionne comme prévu.

Le problème que je rencontre avec cette configuration est que lorsqu’un enfant passe à la ligne suivante, il y a une bonne quantité d’espace blanc à droite du parent.

J’ai écrit cette fonction jquery qui regarde d’abord chaque div enfant. Lorsqu’il détecte qu’un enfant a été encapsulé, il ajoute un élément

juste avant lui-même, ce qui crée un “saut de ligne”. Cela supprime l’espace blanc du côté droit dans le parent, repositionnant ainsi le parent au centre même de la vue. Cette fonction est appelée lors de l’événement ” orientationchange “, supprimant toutes les div factices trouvées auparavant.

Maintenant, mon problème – Sur le navigateur Android 2.3, le passage du mode portrait au mode paysage ne permet pas d’élargir la largeur du parent au-delà de la largeur de ce qu’il est en mode portrait. Évidemment, si je charge la page pour la première fois en mode paysage, le rendu est correct, mais le second passage en portrait, puis en paysage, le problème réapparaît.

Désolé, cela prend du temps, mais je souhaite vraiment trouver une solution à ce problème. J’ai essayé beaucoup de choses, même en définissant la largeur maximale du parent sur une valeur élevée codée en dur, mais pas de dés.

Merci pour l’aide de tous à l’avance!