<col>
<colgroup>の子要素として使用し、表の列に所属する複数のセルに対してまとめてCSS等を設定できます。
<col>を使用する場合は
<colgroup>にはspan属性を設定しません。
<colgroup>にspan属性を設定する場合と<col>を使用する場合で機能は変わりませんが、
<colgroup>に<col>を内包したほうが
<tr><td>の入れ子の関係に近い感じになりわかりやすいかと思います。
span属性を設定することで複数の列を対象にできます。
例
<table border="1">
<colgroup><col style="background-color:red"><col span="2" style="background-color:blue"></colgroup>
<tr><td>a1</td><td>b1</td><td>c1</td></tr>
<tr><td>a2</td><td>b2</td><td>c2</td></tr>
</table>
実際の表示