Brian Nezhad
Brian Nezhad

Reputation: 6258

Difference between text-align: end and right

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

Answers (2)

Saqib Amin
Saqib Amin

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

Andreas Wong
Andreas Wong

Reputation: 60516

According to https://developer.mozilla.org/en/docs/Web/CSS/text-align:

  • end
    The same as right if direction is left-to-right and left 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

Related Questions