Reputation: 6258
What is the difference between text-align: end;
and text-align: right;
?
When I use either one I get the same result, but is there any differences?
Upvotes: 22
Views: 14880
Reputation: 1171
Yes there is, according to css-tricks:
There are two new values in CSS3 as well, start and end. These values make multiple language support easier For example, English is a left-to-right (ltr) language and Arabic is a right-to-left (rtl) language. Using "right" and "left" for values is too rigid and doesn't adapt as the direction changes. These new values do adapt:
1: start - Same as "left" in ltr, same as "right" in rtl.
2: end - Same as "right" in ltr, same as "left" in rtl.
See detail here: text-align in CSS
Upvotes: 3
Reputation: 60516
According to https://developer.mozilla.org/en/docs/Web/CSS/text-align:
end
The same asright
if direction is left-to-right andleft
if direction is right-to-left.
right
The inline contents are aligned to the right edge of the line box.
Basically you use end
in tandem to direction: [rtl|ltr]
and end
will adjust accordingly, whereas right will always keep your text to the right
no matter what direction you set.
https://jsfiddle.net/ths4kdmx/
.end {
text-align: end;
}
.right {
text-align: right;
}
.dir-ltr {
direction: ltr;
}
.dir-rtl {
direction: rtl;
}
<div class="dir-ltr end">
End alignment in left-to-right direction
</div>
<div class="dir-rtl end">
End alignment in right-to-left direction
</div>
<div class="dir-ltr right">
Right alignment in left-to-right direction
</div>
<div class="dir-rtl right">
Right alignment in right-to-left direction
</div>
Upvotes: 42