Хотя это и не особенно элегантно, мне нравится подбрасывать что-то подобное в моем файле CSS для всего сайта:
.tr1 td:nth-child(1), .tr1 th:nth-child(1),
.tr2 td:nth-child(2), .tr2 th:nth-child(2),
.tr3 td:nth-child(3), .tr3 th:nth-child(3),
.tr4 td:nth-child(4), .tr4 th:nth-child(4),
.tr5 td:nth-child(5), .tr5 th:nth-child(5),
.tr6 td:nth-child(6), .tr6 th:nth-child(6),
.tr7 td:nth-child(7), .tr7 th:nth-child(7),
.tr8 td:nth-child(8), .tr8 th:nth-child(8),
.tr9 td:nth-child(9), .tr9 th:nth-child(9) { text-align:right }
.tc1 td:nth-child(1), .tc1 th:nth-child(1),
.tc2 td:nth-child(2), .tc2 th:nth-child(2),
.tc3 td:nth-child(3), .tc3 th:nth-child(3),
.tc4 td:nth-child(4), .tc4 th:nth-child(4),
.tc5 td:nth-child(5), .tc5 th:nth-child(5),
.tc6 td:nth-child(6), .tc6 th:nth-child(6),
.tc7 td:nth-child(7), .tc7 th:nth-child(7),
.tc8 td:nth-child(8), .tc8 th:nth-child(8),
.tc9 td:nth-child(9), .tc9 th:nth-child(9) { text-align:center }
Затем просто укажите, какие номера столбцов вы хотите выровнять по центру или по правому краю, т. Е. Если вы хотите, чтобы столбцы 2 и 7 были выровнены по правому краю и по центру 3, просто выполните:
<table class="tr2 tc3 tr7">
Хотя CSS не очень элегантный, альтернативы еще менее элегантны: то есть пользовательский класс для каждой таблицы или требование, чтобы каждый tr
имел class="ralign"
или аналогичный.
Не работает с IE8