float: right dans IE7 pour tomber à une nouvelle ligne
J'ai été coincé sur un flotteur de problème pour un peu de temps donc j'espère que la communauté pourra m'aider à nouveau. J'ai un nouveau webform ici. Comme d'habitude, il semble bien en tout, mais IE7 (ou IE8 en compatibilité).
Pour quelque raison que certains de ces conteneurs sont en terminant par le champ de formulaire sur une nouvelle ligne sous la forme de texte. CSS n'est pas mon point fort, sinon, je serais en mesure de résoudre ce problème que je suis sûr. Quelqu'un peut me dire ce que je suis en manque ici?
J'ai essayé d'ajouter float: left à la forme de texte, mais cela s'est terminé avec un tout autre désordre.
Vous devez vous connecter pour publier un commentaire.
Essayer de petit changement de balisage: placer les éléments avec un flotteur avant éléments sans elle (à partir de la même ligne). Il devrait aider.
Je sais que ça a été un long temps depuis que cela a été posté, mais j'ai trouvé une solution que je l'aime pour cela. L'essentiel est à l'aide de "l'expression" de la balise dans votre CSS pour IE7 ne déplacer que le flottait élément à être le premier élément de la société mère dans les DOM. Il sera sémantiquement correcte pour tous les autres navigateurs, mais pour IE7 nous modifier le DOM pour déplacer le flottait élément.
Dans mon cas, j'ai:
Dans mon CSS pour les pull-droit, j'utilise:
Le résultat est que IE7 mes coups
<small>
pour être le premier élément de<div>
mais tous les autres navigateurs quitter le balisage seul.Cela pourrait ne pas fonctionner pour tout le monde. Techniquement, il est en train de modifier le balisage, mais seulement dans les DOM pour IE7 et c'est aussi une solution d'activer javascript.
Aussi, je comprends qu'il peut y avoir certains problèmes de performances avec l'expression (c'est lent), donc c'est peut-être pas l'idéal, il y a beaucoup de chars comme ça. Dans mon cas, cela a bien fonctionné et m'a permis de garder sémantiquement correct HTML.
Si vous flottez votre
.formText
gauche, float votrespan.required
gauche, puis flotter vos entrées gauche et vous devriez être en mesure de les aligner sur la même ligne.J'avais modifier votre balise un peu. votre
<span class="formText">
devrait vraiment être un<label>
Par exemple:
et votre css serait quelque chose comme ceci:
Vous pouvez essayer de faire les balises span, vous avez le texte de largeur fixe, flotter à gauche, et faire de même pour le champ de saisie que vous souhaitez correspondre avec. Je recommande aussi à l'aide d'une balise d'étiquette au lieu d'une balise span dans les formulaires. Pas de véritable raison solide pour elle, c'est juste qu'une étiquette a été conçu pour exactement ce que vous avez la balise span faire.
Ce que vous voulez faire est d'ajouter un clear:both comme le dernier de la fratrie de votre flottait éléments.
Donc quelque chose comme: