J'utilise text-align de style css pour aligner le contenu à l'intérieur d'un conteneur en HTML. Cela fonctionne très bien lorsque le contenu est du texte ou que le navigateur est IE. Mais sinon ça ne marche pas.
De plus, comme son nom l'indique, il est essentiellement utilisé pour aligner le texte. La propriété align est obsolète depuis longtemps.
Existe-t-il un autre moyen d'aligner le contenu en html?
html
css
text-align
Hemanshu Bhojak
la source
la source
Réponses:
text-align aligne le texte et tout autre contenu en ligne. Il n'aligne pas les enfants des éléments de bloc.
Pour ce faire, vous voulez donner à l'élément que vous voulez aligner une largeur, avec des marges gauche et droite 'auto'. C'est la méthode conforme aux normes qui fonctionne partout sauf IE5.x.
Pour que cela fonctionne dans IE6, vous devez vous assurer que le mode Standards est activé en utilisant un DOCTYPE approprié.
Si vous avez vraiment besoin de prendre en charge le mode IE5 / Quirks, ce que vous ne devriez pas vraiment de nos jours, il est possible de combiner les deux approches différentes du centrage:
(De toute évidence, les styles sont mieux placés dans une feuille de style, mais la version en ligne est illustrative.)
la source
Vous pouvez également le faire comme ceci:
HTML
CSS
Comme Artem Russakovskii l'a également mentionné, lisez l'article original de Mattew James Taylor pour une description complète.
la source
la source
Honnêtement, je déteste toutes les solutions que j'ai vues jusqu'à présent, et je vais vous dire pourquoi: elles ne semblent tout simplement pas s'aligner correctement ... alors voici ce que je fais habituellement:
Je sais quelles valeurs de pixel chaque div et leurs marges respectives contiennent ... alors je fais ce qui suit.
Je vais créer un div wrapper qui a une position absolue et une valeur à gauche de 50% ... donc ce div commence maintenant au milieu de l'écran, puis je soustrais la moitié de tout le contenu de la largeur du div ... et j'obtiens un contenu magnifiquement mis à l'échelle ... et je pense que cela fonctionne également sur tous les navigateurs. Essayez-le par vous-même (cet exemple suppose que tout le contenu de votre site est enveloppé dans une balise div qui utilise cette classe wrapper et que tout son contenu a une largeur de 200 pixels):
EDIT: j'ai oublié d'ajouter ... vous pouvez également définir la largeur: 0px; sur ce div wrapper pour certains navigateurs pour ne pas afficher les barres de défilement, puis vous pouvez utiliser le positionnement absolu pour tous les div internes.
Cela fonctionne également INCROYABLE pour aligner verticalement votre contenu ainsi qu'en utilisant top: 50% et margin-top. À votre santé!
la source
Voici une technique que j'utilise qui a bien fonctionné:
la source
Voici les méthodes qui ont toujours fonctionné pour moi
Définissez l'affichage du div parent sur
display: flex;
et vous pouvez aligner les éléments enfants à l'intérieur du div à l'aide des boutonsjustify-content: center;
(pour aligner les éléments sur l'axe principal) etalign-items: center;
(pour aligner les éléments sur l'axe transversal).Si vous avez plusieurs éléments enfants et que vous souhaitez contrôler la manière dont ils sont organisés (colonnes / lignes), vous pouvez également ajouter une
flex-direction
propriété.Exemple de travail:
2. (méthode plus ancienne) Utilisation de la position, des propriétés de marge et de la taille fixe
Exemple de travail:
la source
Toutes les réponses parlent d'alignement horizontal.
Pour l'alignement vertical de plusieurs éléments de contenu, jetez un œil à cette approche:
la source
Juste un autre exemple utilisant HTML et CSS:
la source