web-dev-qa-db-fra.com

Comment aligner un élément div inside td en utilisant une classe CSS

Ça marche avec ça

<td align="center">

Mais je veux utiliser la classe CSS.

J'ai défini la classe comme ça mais pas de chance

td
{
    vertical-align: middle;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    align: center;
}

L'alignement vertical fonctionne et l'alignement du texte fonctionne pour le texte. Mais cela n’aligne pas div dedans td avec cette façon. Je veux aligner div inside td.

62
MonsterMMORPG
div { margin: auto; }

Cela va centrer votre div.

Div par lui-même est un blockelement. Par conséquent, vous devez définir le style de la div.

126
Luuk

Je ne peux pas vous aider beaucoup sans un petit fragment (éventuellement réduit) du problème. Si le problème est ce que je pense qu'il est alors c'est parce qu'un div par défaut prend largeur de 100%, et en tant que tel, il ne peut pas être aligné.

Ce que vous voudrez peut-être ensuite, c’est d’aligner les éléments en ligne à l’intérieur de la div (tels que le texte) avec text-align: center; sinon, vous pouvez envisager de définir la div sur display: inline-block ;

Si vous suivez la voie du blocage en ligne, vous devrez peut-être prendre en compte mon préféré IE bidouille.

width:100px;
display:inline-block;
zoom:1; //IE only
*display:inline; //IE only

Bonne codage :)

6
martin