Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /css/css-writing-modes/table-cell-align-006.html - WPT Dashboard Interop Dashboard
<!DOCTYPE html>
<meta charset="utf-8">
<title>CSS Writing Modes test: text-align in orthogonal table cell</title>
<meta assert="text-align values respect line-relative mappings of the table cell">
<link rel="match" href="reference/table-cell-align-006-ref.html">
<link rel="author" title="Jonathan Kew" href="mailto:jkew@mozilla.com">
<meta name="flags" content="ahem" />
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
<style>
table {
font: 20px/1 Ahem;
border: 1px solid gray;
display: inline-table;
margin: 1em;
}
td {
padding: 0;
color: green;
}
table.vrl td {
writing-mode: vertical-rl;
}
table.slr td {
writing-mode: sideways-lr;
}
table.h {
writing-mode: vertical-lr;
}
table.h td {
writing-mode: initial;
}
/* If text-align works correctly on the cells, their green Ahem glyphs
should cover the red part of each background. */
.left {
text-align: left;
background: linear-gradient(to bottom, red 20%, transparent 20%);
}
.slr .left {
background: linear-gradient(to top, red 20%, transparent 20%);
}
.center {
text-align: center;
background: linear-gradient(to bottom, transparent 40%, red 40%, red 60%, transparent 60%);
}
.right {
text-align: right;
background: linear-gradient(to bottom, transparent 80%, red 80%);
}
.slr .right {
background: linear-gradient(to top, transparent 80%, red 80%);
}
.start,
.slr .start:dir(rtl)
{
text-align: start;
background: linear-gradient(to bottom, red 20%, transparent 20%);
}
.start:dir(rtl),
.slr .start {
background: linear-gradient(to top, red 20%, transparent 20%);
}
.end,
.slr .end:dir(rtl)
{
text-align: end;
background: linear-gradient(to bottom, transparent 80%, red 80%);
}
.end:dir(rtl),
.slr .end
{
background: linear-gradient(to top, transparent 80%, red 80%);
}
.justify {
text-align-last: justify;
background: linear-gradient(to bottom, red 20%, transparent 20% 80%, red 80% );
}
.h .left {
background: linear-gradient(to right, red 20%, transparent 20%);
}
.h .center {
background: linear-gradient(to right, transparent 40%, red 40%, red 60%, transparent 60%);
}
.h .right {
background: linear-gradient(to right, transparent 80%, red 80%);
}
.h .start {
background: linear-gradient(to right, red 20%, transparent 20%);
}
.h .start:dir(rtl) {
background: linear-gradient(to left, red 20%, transparent 20%);
}
.h .end {
background: linear-gradient(to right, transparent 80%, red 80%);
}
.h .end:dir(rtl) {
background: linear-gradient(to left, transparent 80%, red 80%);
}
.h .justify {
background: linear-gradient(to right, red 20%, transparent 20% 80%, red 80% );
}
</style>
</div>
<table class=vrl>
<tr>
<td>XXXXX</td>
<td class=left>X</td>
<td class=center>X</td>
<td class=right>X</td>
<td class=start>X</td>
<td class=end>X</td>
<td class=justify>X X</td>
</tr>
</table>
<table class=vrl>
<tr dir=rtl>
<td>XXXXX</td>
<td class=left>X</td>
<td class=center>X</td>
<td class=right>X</td>
<td class=start>X</td>
<td class=end>X</td>
<td class=justify>X X</td>
</tr>
</table>
</div>
<div>
<table class=slr>
<tr>
<td>XXXXX</td>
<td class=left>X</td>
<td class=center>X</td>
<td class=right>X</td>
<td class=start>X</td>
<td class=end>X</td>
<td class=justify>X X</td>
</tr>
</table>
<table class=slr>
<tr dir=rtl>
<td>XXXXX</td>
<td class=left>X</td>
<td class=center>X</td>
<td class=right>X</td>
<td class=start>X</td>
<td class=end>X</td>
<td class=justify>X X</td>
</tr>
</table>
</div>
<div>
<table class=h>
<tr>
<td>XXXXX</td>
<td class=left>X</td>
<td class=center>X</td>
<td class=right>X</td>
<td class=start>X</td>
<td class=end>X</td>
<td class=justify>X X</td>
</tr>
</table>
<table class=h>
<tr dir=rtl>
<td>XXXXX</td>
<td class=left>X</td>
<td class=center>X</td>
<td class=right>X</td>
<td class=start>X</td>
<td class=end>X</td>
<td class=justify>X X</td>
</tr>
</table>
</div>