2010-02-11 8 views
3

Je suis très proche et je l'utilise dans Safari, Firefox et IE8, mais IE7 les étiquettes et les boutons radio ne s'alignent pas verticalement.Etiquette Alignement à droite et alignement vertical avec case à cocher/bouton radio CSS

Mon HTML est:

<div id="master-container"> 
    <fieldset id="test"> 
    <legend>This is a test of my CSS</legend> 
     <ul class="inputlist"> 
      <li> 
       <label for="test1">Test 1</label> 
       <input name="test1" id="test1" type="checkbox" disabled="disabled"/> 
      </li> 
      <li> 
       <label for="test2">Test 2</label> 
       <input name="test2" id="test2" type="checkbox" disabled="disabled"/> 
      </li> 
     </ul> 
    </fieldset> 
</div> 

Mon CSS:

html { 
    font-family:Arial,Helvetica,sans-serif; 
} 
#master-container { 
    width:615px; 
    font-size:12px; 
} 

ul.inputlist { 
    list-style-type:none; 
} 
ul.inputlist li { 
    width:100%; 
    margin-bottom:5px; 
} 
ul.inputlist li label { 
    width:30px; 
    text-align:right; 
    margin-right:7px; 
    float:left; 
} 

EDIT:
Basé sur la suggestion de vérifier le reste de mon html et css. J'ai mis à jour le code ci-dessus et maintenant il démontre avec précision le problème. Si je prends font-size sur #master-container, il s'aligne, mais ce n'est pas la bonne taille de police. J'ai essayé d'ajouter un font-size à ul.inputlist li input mais cela n'a pas aidé. Aucune suggestion? Merci pour votre aide tout le monde!

+0

Je peux sans doute comprendre cela, mais est-il plus du code qui vous travaillez? – nickelleon

Répondre

2

Cela pourrait être ce dont vous avez besoin:

label, input {vertical-align: baseline;} 

deux éléments avec la même propriété, vous aidera. De plus, les travaux de base sont similaires. middle fonctionne différemment dans IE7.

J'espère que ça aide!

+0

Salut Allan, merci pour la suggestion, mais malheureusement, cela n'a pas fonctionné. D'autres idées? – Jon

+0

J'ai trouvé ceci: http://stackoverflow.com/questions/306252/how-to-align-checkboxes-and-their-labels-consistently-cross-browsers J'espère que cela peut vous aider! –

+1

Salut Allan, j'ai dû enlever un * {margin: 0px; padding: 0px;} J'avais, donner à ul.inputlist li une ligne-hauteur de 18px et ensuite utiliser vertical-align: ligne de base sur l'étiquette. Merci!!!!!!!!! – Jon

0

Qu'en est-il d'ajouter « clear: both » aux éléments li:

ul.inputlist li{width:100%;margin-bottom:5px;clear:both} 
+0

Merci pour la suggestion, mais cela n'a pas fonctionné non plus. D'autres idées? – Jon

+0

Quand j'ai testé le balisage/CSS ci-dessus, ça ne marche pas pour moi dans Firefox (mais c'est le cas dans IE7), donc j'ai l'impression qu'il doit y avoir quelque chose d'autre qui se passe. Y a-t-il plus de balisage/CSS? Une autre solution possible consiste à ajouter plus de marge inférieure, disons 20px environ. – attack

+0

J'ai ajouté le code à l'origine du problème. Merci pour votre suggestion! – Jon