Text-align - Propriété CSS
Résumé des caractéristiques de la propriété text-align
start | center | end | justify | left | right | match-parent | justify-allstarttext-align passe d'une valeur à l'autre sans transition.Schéma de la syntaxe de text-align.
text-align.Cliquez sur les liens du schéma pour plus de précisons sur les valeurs.
Description des termes utilisés sur le schéma :
charest un caractère unique, inscrit entre apostrophes ou guillemets.
Description de la propriété text-align.
La propriété text-align définit l'alignement du texte dans l'espace qui lui est réservé : les lignes sont elles calées à gauche,
à droite, ou bien le texte est-il justifié ?
Plus précisément, text-align est une propriété raccourcie qui permet de définir en une seule écriture les deux propriétés
suivantes :
text-align-all: alignement de toutes les lignes du ou des paragraphes, sauf la dernière si celle-ci est définie spécifiquement par la propriété suivante.text-align-last: alignement de la dernière ligne du ou des paragraphes. Si cette propriété n'est pas spécifiée, la dernière ligne est alignée comme le reste du paragraphe. Une exception cependant : si le paragraphe est justifié, la dernière ligne(1) sera alignée du côtéstart(à gauche pour les langues latines).
(1) On désigne par "dernière ligne" bien sûr celle qui termine le texte de l'élément, mais aussi celles qui précèdent les retours à la ligne éventuels (balises br/).
Voici, en résumé ce que fait la propriété text-align sur l'ensemble des lignes de texte de l'élément.
On voit, en examinant ce tableau, que la propriété text-align-all n'est vraiment pas nécessaire, et que la propriété
text-align-last ne sera utilisée que dans un cas très particulier : cette présentation que l'on voit dans certains livres
(et sur ce paragraphe), qui consiste à justifier le texte, sauf les dernières lignes des paragraphes qui sont centrées.
text-align | Toutes les lignes | Dernière ligne |
|---|---|---|
left | left | left |
right | right | right |
center | center | center |
start | start | start |
end | end | end |
justify | justify | start |
justify-all | justify | justify |
Dans le cas d'un texte justifié, la justification peut être finement ajustée avec la propriété text-justify.
Prise en charge de la langue.
Les langues non latines ne s'écrivent pas toutes de gauche à droite et du haut vers le bas.
Pour prendre en compte ces particularités, il est conseillé d'utiliser les valeurs logiques (start, end)
plutôt que les valeurs physiques (left, right).
leftrightValeurs pour text-align.
- text-align: start; text-align: end;
Le contenu est aligné du côté du début ou de la fin des lignes, compte tenu du sens d'écriture.
startest donc équivalent àleftpour les langues latines, tandis que pour les langues arabes,leftest équivalent àright. D'autres langues s'écrivent verticalement (CJK, hébreu, etc.), dans tous les cas,startcorrespond au début des lignes, etendà la fin des lignes.Voir la propriété
directionpour ce qui est de la gestion de la direction d'écriture.Le texte peut être aligné par rapport à un des bords d’un bloc de texte. Si le texte est aligné par rapport aux deux bords, on dit qu'il est justifié. En général, la dernière ligne du texte d’un paragraphe n'est pas justifiée: elle peut être alignée à droite, à gauche, ou centrée.Langue françaisetext-align:startيمكن محاذاة النص مع أحد حواف إطار النص. إذا تمت محاذاة النص مع كلا الحافتين، فيُقال إنه مبرر. بشكل عام، لا يتم تبرير السطر الأخير من النص في فقرة ما: يمكن أن يكون محاذياً لليمين أو لليسار أو، في أغلب الأحيان، في المنتصف.Langue arabetext-align:start - text-align: left; text-align: right;
Le contenu est aligné sur la droite de l'élément. Ces valeurs sont des valeurs physiques, qui ne prennent pas en compte la direction d'écriture en fonction de la langue.
Le texte peut être aligné par rapport à un des bords d’un bloc de texte. Si le texte est aligné par rapport aux deux bords, on dit qu'il est justifié. En général, la dernière ligne du texte d’un paragraphe n'est pas justifiée: elle peut être alignée à droite, à gauche, ou centrée.Langue françaisetext-align:leftيمكن محاذاة النص مع أحد حواف إطار النص. إذا تمت محاذاة النص مع كلا الحافتين، فيُقال إنه مبرر. بشكل عام، لا يتم تبرير السطر الأخير من النص في فقرة ما: يمكن أن يكون محاذياً لليمين أو لليسار أو، في أغلب الأحيان، في المنتصف.Langue arabetext-align:left - text-align: center;
Le texte est centré enter les bords droit et gauche de l'élément.
Le texte peut être aligné par rapport à un des bords d’un bloc de texte. Si le texte est aligné par rapport aux deux bords, on dit qu'il est justifié. En général, la dernière ligne du texte d’un paragraphe n'est pas justifiée: elle peut être alignée à droite, à gauche, ou centrée.Langue françaisetext-align:centerيمكن محاذاة النص مع أحد حواف إطار النص. إذا تمت محاذاة النص مع كلا الحافتين، فيُقال إنه مبرر. بشكل عام، لا يتم تبرير السطر الأخير من النص في فقرة ما: يمكن أن يكون محاذياً لليمين أو لليسار أو، في أغلب الأحيان، في المنتصف.Langue arabetext-align:center - text-align: justify;
Justifie le texte dans l'élément, c'est à dire que toutes les lignes de texte ont la même longueur. La dernière ligne de chaque paragraphe ou les lignes qui sont suivies d'un retour forcé (balise br restent cependant calée du côté
startsauf indication contraire par la propriététext-align-last.La méthode utilisée pour justifier le texte est définie par
text-justify: cela peut se faire soit en espaçant les mots, soit en espaçant les lettres.Le texte peut être aligné par rapport à un des bords d’un bloc de texte. Si le texte est aligné par rapport aux deux bords, on dit qu'il est justifié. En général, la dernière ligne du texte d’un paragraphe n'est pas justifiée: elle peut être alignée à droite, à gauche, ou centrée.Langue françaisetext-align:justifyيمكن محاذاة النص مع أحد حواف إطار النص. إذا تمت محاذاة النص مع كلا الحافتين، فيُقال إنه مبرر. بشكل عام، لا يتم تبرير السطر الأخير من النص في فقرة ما: يمكن أن يكون محاذياً لليمين أو لليسار أو، في أغلب الأحيان، في المنتصف.Langue arabetext-align:justify - text-align: justify-all; ⚠
Le texte est justifié y compris la dernière ligne des paragraphes.
Attention ! La justification de la dernière ligne des paragraphes peut donner un résultat inesthétique, particulièrement s'il y a peu de mots sur la dernière ligne.
⚠ L'exemple ci-dessous est une simulation car peu de navigtateurs traitent encore correctement cette valeur.
Le texte peut être aligné par rapport à un des bords d’un bloc de texte. Si le texte est aligné par rapport aux deux bords, on dit qu'il est justifié. En général, la dernière ligne du texte d’un paragraphe n'est pas justifiée: elle peut être alignée à droite, à gauche, ou centrée.Langue françaisetext-align:justify; text-align-last:justifyيمكن محاذاة النص مع أحد حواف إطار النص. إذا تمت محاذاة النص مع كلا الحافتين، فيُقال إنه مبرر. بشكل عام، لا يتم تبرير السطر الأخير من النص في فقرة ما: يمكن أن يكون محاذياً لليمين أو لليسار أو، في أغلب الأحيان، في المنتصف.Langue arabetext-align:justify-all - text-align: match-parent; ⚠
Cette valeur est équivalente à
inherit, sauf si les directions d'écriture de l'élément et du parent sont différentes.Exemple : le texte du parent est aligné sur la valeur
startet son mode d'écriture est adapté aux langues latines : son texte est donc aligné sur la gauche.
L'élément enfant est quant à lui adapté aux langues arabes. Le simple héritage de la valeurstartl'aligne sur la droite, mais la valeurmatch-parentle maintient aligné sur la gauche, comme son parent.يمكن محاذاة النص مع أحد حواف إطار النص. إذا تمت محاذاة النص مع كلا الحافتين، فيُقال إنه مبرر. بشكل عام، لا يتم تبرير السطر الأخير من النص في فقرة ما: يمكن أن يكون محاذياً لليمين أو لليسار أو، في أغلب الأحيان، في المنتصف.Langue arabe
Parent en langue latinetext-align:inheritيمكن محاذاة النص مع أحد حواف إطار النص. إذا تمت محاذاة النص مع كلا الحافتين، فيُقال إنه مبرر. بشكل عام، لا يتم تبرير السطر الأخير من النص في فقرة ما: يمكن أن يكون محاذياً لليمين أو لليسار أو، في أغلب الأحيان، في المنتصف.Langue arabe
Parent en langue latinetext-align:match-parent - text-align: ',' right; ⚠
Le texte indiqué entre apostrophes ou guillemets ne doit comporter qu'un seul caractère. Cette syntaxe est utilisable pour aligner le contenu des cellules d'un tableau par rapport au caractère indiqué. On s'en servira surtout pour aligner une colonne de nombres sur le séparateur décimal.
Cas particuliers :
- Si seul un caractère est précisé, sans mention de l'alignement, la valeur par défaut pour ce dernier est
right. - Si le caractère indiqué n'apparaît pas dans le texte à aligner, l'alignement se fait comme si ce caractère était à la fin.
- Si le caractère d'alignement apparaît plusieurs fois, c'est la première occurrence qui est prise en compte.
245,10 24 1245,10 41,10 244,50 24,710 5,451 240,100 45,10 ⚠ Il et probable que votre navigateur ne traite pas encore cette syntaxe. Le résultat devrait ressembler à la simulation ci-dessous.
245,10241245,1041,10244,5024,7105,451240,10045,10 - Si seul un caractère est précisé, sans mention de l'alignement, la valeur par défaut pour ce dernier est
- text-align: initial; (
start) text-align: inherit; text-align: revert; text-align: revertLayer; text-align: unset;Les valeurs communes sont présentées sur ces pages :
initial,inherit,revert,revert-layer,unset.
Exemple d'animation de text-align.
L'animation de la propriété text-align est possible mais ne présente sans doute pas beaucoup d'intérêt visuel.
Les valeurs acceptées par text-align étant non numériques, il faut les énumérer une par une dans la description de
l'animation (@keyframes).
Exemple interactif avec la propriété text-align.
Le texte utilisé pour la démonstration comporte un retour à la ligne forcé (balise br/) après les mots "plusieurs lignes".
La dernière ligne ne comporte pas de possibilité de retour à la ligne. Cela a été fait avec la propriété white-space fixée
à la valeur no-wrap, mais cette situation peut se rencontrer également dans le cas d'une ligne courte comportant un mot très long.
Dans ce cas de figure la spécification prévoit que la ligne soit toujours calée du côté start, quelque soit la valeur affectée
à text-align.
Le petit tableau présenté plus bas montre l'effet d'un alignement sur un caractère (en français ce sera probablement la virgule), mais cette possibilité est encore mal prise en charge.
Mais d'autres langues (arabe, CJK s’écrivent, de droite à gauche, ou verticalement. L'usage des valeurs logiques
start et end est recommandé, afin que l'alignement s'adapte à la direction d'écriture.
Cas particulier d'une ligne sans possibilité de retour à la ligne.
| HT | TTC |
|---|---|
| 400,25 | 480,288 |
| 45,3 | 54,36 |
| 1200,752 | 1440,9024 |
Compatibilité des navigateurs avec text-align.
La propriété text-align est bien reconnue en elle-même, mais il reste cependant quelques problèmes de compatibilité (2022)
avec les valeurs match-parent ou justify-all nouvellement introduites dans la norme.
text-align qui gère l'alignement du texte dans un élément.text-alignNavigateurs sur ordinateurs :
Navigateurs sur mobiles :
Navigateurs obsolètes ou marginaux :

Internet Explorer

KaiOS Browser

Opéra Mobile

Opéra

Safari

Safari sur IOS

Firefox pour Androïd

Samsung Internet

Chrome

Edge

Firefox

Androïd Brower

Chrome pour Androïd

Baidu Browser

QQ Browser

UC Browser pour Androïd

Opéra mini
Histoire de la propriété text-align.
-
CSS 1 - Spécification concernant les feuilles de styles en cascade - Version 1
Définition initiale de la propriététext-aligndans la version 1 du langage CSS.17 Novembre 1995Document de travail.12 Novembre 1996Proposé à la recommandation.17 Décembre 1996Recommandation.13 Septembre 2018Ancienne spécification, déclarée obsolète. -
CSS 2.1 - Spécification concernant les feuilles de styles en cascade - Révision 1
La valeurinheritest acceptée.04 Novembre 1997Document de travail.24 Mars 1998Proposé à la recommandation.11 Mai 1998Recommandation. -
Module CSS - Texte - Niveau 3
text-alignest changée en une propriété résumée regroupant les valeurs pourtext-align-allettext-align-last.
Les valeurs logiquesstartetendsont reconnues. Les valeursmatch-parentetjustify-allsont ajoutées.27 Janvier 1999Document de travail.22 Décembre 2020Candidat à la recommandation. -
Module CSS - Texte - Niveau 4
Ajout de la possibilité d'aligner sur un caractère, par exemple pour aligner une colonne de nombres sur le séparateur décimal.22 Septembre 2015Document de travail.
A propos de la gestion des textes, voir aussi.
La propriété text-align est décrite dans la spécification CSS Text Module, de même que tout ce qui concerne la gestion des textes
(alignement, espacements, césure, débordement, etc...). Les propriétés suivantes figurent également dans ce module de spécification :
Propriétés :
text-align).text-spacing-trim et text-autospace. regroupe les informations d'espacement des caractères pour les langues CJK.



