1º tens que te ter em atenção que no local onde vai levar os títulos na tabela tens que usar <th> e não <td> (assim podes dar formatação em três partes diferentes da tabela, a própria tabela, as células normais e nas células de títulos, já não me lembro, mas acho que também se pode dar formatção à linhas <tr>).
Usando html do site:
<table class="comBordaComplexa">
<tr>
<th>Coluna 1</th>
<th>Coluna 2</th>
<th>Coluna 3</th>
</tr>
<tr>
<td>valor 1.1</td>
<td>valor 1.2</td>
<td>valor 1.3</td>
</tr>
<tr>
<td>valor 2.1</td>
<td>valor 2.2</td>
<td>valor 2.3</td>
</tr>
<tr>
<td>valor 3.1</td>
<td>valor 3.2</td>
<td>valor 3.3</td>
</tr>
<tr>
<td>valor 4.1</td>
<td>valor 4.2</td>
<td>valor 4.3</td>
</tr>
</table>
e no css deves colocar:
/* ESTA É A FORMATAÇÃO GERAL DA TABELA */
table.comBordaComplexa {
border-collapse: collapse; /* CSS2 */
background: #FFFFF0;
border: dashed red 1px; /* Precedência tem bug no IE */
}
/* ESTA É A FORMATAÇÃO DAS CÉLULAS
table.comBordaComplexa td {
border: 1px dotted blue;
}
/* ESTA É A FORMATAÇÃO DAS CÉLULAS QUE LEVAM O TÍTULO */
table.comBordaComplexa th {
border: 1px solid blue;
border-bottom: 2px solid green;
background: #F0FFF0;
}
Tem atenção que o IE não suporta, por exemplo, bordas com pontos, transforma-os em traços.