css property
`text-align` CSS property
The text-align CSS property sets the horizontal alignment of the inline-level content inside a block element or table-cell box. This means it works like vertical-align but in the horizontal direction.
Interactive exampleOpen the canonical MDN source to run this embedded demo.
text-align: start;
text-align: end;
text-align: center;
text-align: justify;
<section id="default-example">
<div id="example-element">
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
est laborum.
</p>
</div>
</section>
section {
font-size: 1.5em;
}
#default-example > div {
width: 250px;
}
Syntax
/* Keyword values */
text-align: start;
text-align: end;
text-align: left;
text-align: right;
text-align: center;
text-align: justify;
text-align: match-parent;
/* Block alignment values (Non-standard syntax) */
text-align: -moz-center;
text-align: -webkit-center;
/* Global values */
text-align: inherit;
text-align: initial;
text-align: revert;
text-align: revert-layer;
text-align: unset;
Values
This property is specified as one of the following keyword values:
start- : The same as
leftif direction is left-to-right andrightif direction is right-to-left.
- : The same as
end- : The same as
rightif direction is left-to-right andleftif direction is right-to-left.
- : The same as
left- : The inline contents are aligned to the left edge of the line box.
right- : The inline contents are aligned to the right edge of the line box.
center- : The inline contents are centered within the line box.
justify- : The inline contents are justified. Spaces out the content to line up its left and right edges to the left and right edges of the line box, except for the last line.
match-parent- : Similar to
inherit, but the valuesstartandendare calculated according to the parent’sdirectionand are replaced by the appropriateleftorrightvalue.
- : Similar to
Accessibility
The inconsistent spacing between words created by justified text can be problematic for people with cognitive concerns such as Dyslexia.
- MDN Understanding WCAG, Guideline 1.4 explanations
- Understanding Success Criterion 1.4.8 | Understanding WCAG 2.0
Formal definition
Formal syntax
Examples
Start alignment
HTML
<p class="example">
Integer elementum massa at nulla placerat varius. Suspendisse in libero risus,
in interdum massa. Vestibulum ac leo vitae metus faucibus gravida ac in neque.
Nullam est eros, suscipit sed dictum quis, accumsan a ligula.
</p>
CSS
.example {
text-align: start;
border: solid;
}
Result
Interactive exampleOpen the canonical MDN source to run this embedded demo.
Centered text
HTML
<p class="example">
Integer elementum massa at nulla placerat varius. Suspendisse in libero risus,
in interdum massa. Vestibulum ac leo vitae metus faucibus gravida ac in neque.
Nullam est eros, suscipit sed dictum quis, accumsan a ligula.
</p>
CSS
.example {
text-align: center;
border: solid;
}
Result
Interactive exampleOpen the canonical MDN source to run this embedded demo.
Example using “justify”
HTML
<p class="example">
Integer elementum massa at nulla placerat varius. Suspendisse in libero risus,
in interdum massa. Vestibulum ac leo vitae metus faucibus gravida ac in neque.
Nullam est eros, suscipit sed dictum quis, accumsan a ligula.
</p>
CSS
.example {
text-align: justify;
border: solid;
}
Result
Interactive exampleOpen the canonical MDN source to run this embedded demo.
Table alignment
This example demonstrates the use of text-align on <table> elements:
- The
<caption>is set to right-aligned. - The first two
<th>elements inherit the left alignment from thetext-align: leftset on the<thead>, while the third is set to right-aligned. - Inside the
<tbody>element, the first row is set to right-aligned, the second is set to center-aligned, and the third uses the default (left) alignment. - Within each row, some cells (c12, c31) are set to override the alignment of the row.
HTML
<table>
<caption>
Example table
</caption>
<thead>
<tr>
<th>Col 1</th>
<th>Col 2</th>
<th class="right">Col 3</th>
</tr>
</thead>
<tbody>
<tr class="right">
<td>11</td>
<td class="center">12</td>
<td>13</td>
</tr>
<tr class="center">
<td>21</td>
<td>22</td>
<td>23</td>
</tr>
<tr id="r3">
<td class="right">31</td>
<td>32</td>
<td>33</td>
</tr>
</tbody>
</table>
CSS
table {
border-collapse: collapse;
border: solid black 1px;
width: 250px;
height: 150px;
}
thead {
text-align: left;
}
td,
th {
border: solid 1px black;
}
.center {
text-align: center;
}
.right,
caption {
text-align: right;
}
Result
Interactive exampleOpen the canonical MDN source to run this embedded demo.
Specifications
SpecificationsStandards references are available on the canonical MDN page.
Browser compatibility
Browser compatibilityCompatibility data is available on the canonical MDN page.