$('.table tbody td:eq(3)').addClass('col4');
.. работает, но выбирает только первую ячейку, а не все ячейки в столбце.
Попробуйте:
$(".table tbody td:nth-child(4)").addClass("col4");
Примечание: Я поставил 4 здесь, потому что :eq(n) основано на нуле и :nth-child(n) основано на одном.
:eq(n)
:nth-child(n)
Вы наткнулись на ключевое различие между ними. eq(3) вернет ровно один элемент, 4-й из набора весь . Очень похоже на то, как :first возвращает только один элемент (максимум), тогда как :first-child может возвращать много.
eq(3)
:first
:first-child
Вы также можете использовать элемент <col> для стилизации целых столбцов вместо необходимости применять стили ко всем <td> s в этом столбце.
<col>
<td>
http://www.w3.org/TR/html401/struct/tables.html#h-11.2.4.2