I have a table and I want all the ab's to line up (ie I want to shift some columns 2 characters left) as shown below where I used non-breaking-spaces (why do I need four?)
But I want to achieve this using only classes and if necessary, spans. I tried using margin-right on an internal span, or padding-right on the td, but both seem to revert to text-align: left. I do not want to use position:absolute.
td {
text-align: right;
}
td .b {
margin-right: 2em;
}
td.c {
/*padding-right: 2em;*/
}
<table>
<tr>
<td>12ab34</td>
</tr>
<tr>
<td>ab34</td>
</tr>
<tr>
<td>ab34</td>
</tr>
<tr>
<td>ab </td>
</tr>
</table>
<br>
<table>
<tr>
<td><span class="a">12ab34</span></td>
</tr>
<tr>
<td><span class="a">ab34</span></td>
</tr>
<tr>
<td><span class="a">ab34</span></td>
</tr>
<tr>
<td class="c"><span class="b">ab</span></td>
</tr>
</table>