Ответ 1
В таблицах HTML действительно нет "столбцов" - строки имеют только первые ячейки, по крайней мере, до разметки. Однако вы можете сделать что-то вроде селекторов CSS:
Учитывая следующую разметку:
<table>
<tr><td>foo</td><td>bar</td><td>bar 2</td></tr>
<tr><td>foo</td><td>bar</td><td>bar 2</td></tr>
<tr><td>foo</td><td>bar</td><td>bar 2</td></tr>
<tr><td>foo</td><td>bar</td><td>bar 2</td></tr>
</table>
CSS
table tr td { width: 20em; }
table tr td:first-child { width: 10em; }
Это установило бы ширину первого "столбца" на 10em, а все остальные столбцы - на 20em.
Возможно, вы захотите рассмотреть поддержку браузера для :first-child
. Альтернативой является добавление класса к первому <td>
в каждом <tr>
(он, похоже, хорошо поддерживается всеми крупными браузерами, отличными от IE6).