Page 1 sur 1

alignement de cellule text

Posté : 07 sept. 2005, 09:16
par manu49
bonjour,
voial voial j'ai des listes suivi de cellules text à remplir,
pour que cela soit plus sympa j'aimerais aligner ces cellules
j'ai essayer avec les identifiants en appilquant du css mais je n'ai aps réussi
voici le code:
pour le body

Code : Tout sélectionner

<li id="li2">Salaire : <INPUT TYPE=TEXT SIZE=20 MAXLENGTH=20 NAME="Salaire" VALUE="<?php echo $cava->Salaire;?>"> </li> <li id="li2">ASSEDIC : <INPUT TYPE=TEXT SIZE=20 MAXLENGTH=20 NAME="ASSEDIC" VALUE="<?php echo $cava->ASSEDIC;?>"> </li>
pour le css

Code : Tout sélectionner

#li2 { padding-left: 2cm; }
Merci

Posté : 07 sept. 2005, 09:38
par Cyrano
Tu as une erreur dans le code HTML : On ne peut pas retrouver plus d'une seule fois la même valeur d'attribut id dans une page : ici, tu as deux fois id="li2" : dans ce cas, utilise plutôt un attribut class et dans le CSS, remplace le "#" par un "." et reviens nous donner le résultat obtenu ?

re

Posté : 07 sept. 2005, 09:54
par manu49
je en comprend aps bien parce que je pensais que ca se faisait comme ca
j'ai plusieurs listes en tout
et la je voulais appliquer un sstyle aux listes "li2" et j'utilisais un identifiant
l'utilisation des listes a été choisie pour faire apparraitre les petits rond au depart
si j'utilise un div cela va disparaitre
en fait je dois mal utiliser la syantaxe pour l'utilisation des listes

Posté : 07 sept. 2005, 10:01
par Cyrano
Ok, mais ce n'est pas un problème, simplement, l'attribut permet de pointer un élément et un seul, donc chaque élément peut avoir un attribut id, mais aucun ne peut avoir la même valeur qu'un autre élément de la même page. Pour corriger ça, utilise un attribut class, par exemple class="li2" qui fera référence par exemple à des balises <li> situées dans une zone particulière de la page et applique le style dans ta feuille CSS non pas sur #li2 mais sur .li2 et la syntaxe sera correcte. Et si tu n'utilises pas de div, rien ne t'oblige à en rajouter un.

Autre méthode : déplace l'attribut id :
HTML :

Code : Tout sélectionner

<ul id="li2"> <li>Salaire : <INPUT TYPE=TEXT SIZE=20 MAXLENGTH=20 NAME="Salaire" VALUE="<?php echo $cava->Salaire;?>"></li> <li>ASSEDIC : <INPUT TYPE=TEXT SIZE=20 MAXLENGTH=20 NAME="ASSEDIC" VALUE="<?php echo $cava->ASSEDIC;?>"></li> </ul>
CSS:

Code : Tout sélectionner

#li2 li { padding-left: 2cm; }

re

Posté : 07 sept. 2005, 10:01
par manu49
en fait il faudrait que je spécifie un margin left a partir du body
mais comment faire lorsque cet élément depend d'un autre type div
le margin left demarre a partir de son parent et pas forcement du body
est il possible de forcer la marge au partir du body?

Posté : 07 sept. 2005, 10:06
par Cyrano
J'ai édité ma précédente réponse pour ajouter une autre méthode syntaxiquement valable et au fond plus pratique.

re

Posté : 07 sept. 2005, 10:11
par manu49
j'ai du mal m'exprimer
en fait j'arrive sans probleme a definir une marge pour le text , ici "salaire" et "assedic"
le soucis est pour le type text a remplir
c'est seulement la case que j'aimerais egalement aligner
mais comme elle fait partie de la liste j'ai du mal a les aligner (je n'y arrive pas d'ailleurs)
merci

Posté : 07 sept. 2005, 10:15
par Cyrano
j'avais bien compris ça : c'est le champ <input> que tu veux aligner à l'intérieur du <li>
Éventuellement, tu pourrais rajouter un style sur l'input:

Code : Tout sélectionner

#li2 li input{ margin-left : 0; }
Ici, j'ai mis 0 mais tu peux modifier la valeur (en positif ou en négatif)
Cette syntaxe va faire que le style s'appliquera uniquement sur les balises <input> se trouvant à l'intérieur de balises <li> elles-même situées dans le blux <ul> correspondant à l'id li2.