Ho un <table>
dove voglio i bordi verticali nella <thead>
/<th>
essere di un colore diverso rispetto al resto della i bordi (tutti i bordi hanno 1 pixel di larghezza, nessun bordo in cima alla tabella). Questo può sembrare facile - il problema è che sia in Firefox, Safari e Chrome, questi bordi verticali "sanguinano" nel bordo orizzontale sottostante, che non sembra molto bello. In Firefox sembra OK se la riga sotto lo <thead>
contiene la stessa quantità di colonne/celle del <thead>
, ma se uso <colspan>
ottengo il "sanguinamento".Bordo verticale di <thead> di colore diverso che sul resto del <table> border - sanguina nel bordo orizzontale in basso - Firefox problema colspan
La soluzione più ovvia sarebbe utilizzare, ad esempio, "solido" sui bordi verticali <th>
e "doppio" sui bordi orizzontali <td>
qui sotto - e questo funziona davvero in Safari e Chrome. Tuttavia, non ho ancora trovato una soluzione per Firefox, e penso di aver provato di tutto. Non riesco a rimuovere il collasso del bordo perché è necessario per altri scopi. (Sì, per impostazione predefinita sembra che io voglio in IE8 e Opera!)
Visualizza esempio: http://jsfiddle.net/7YdCQ/
codice (un esempio molto semplice, con colori forti) - CSS (tutti i confini solidi):
table { border-collapse: collapse; }
thead th { border-left: 1px solid #F00; border-right: 1px solid #F00; }
tbody th, td { border: 1px solid #0F0; }
HTML (2 tavoli, 1 con colspan):
<table>
<thead>
<tr>
<th>Thead TD 1</th>
<th>Thead TD 2</th>
<th>Thead TD 3</th>
</tr>
</thead>
<tbody>
<tr>
<th colspan="3">Tbody TH colspan 3</th>
</tr>
<tr>
<td>Tbody TD</td>
<td>Tbody TD</td>
<td>Tbody TD</td>
</tr>
</tbody>
</table>
<table>
<thead>
<tr>
<th>Thead TD 1</th>
<th>Thead TD 2</th>
<th>Thead TD 3</th>
</tr>
</thead>
<tbody>
<tr>
<td>Tbody TD</td>
<td>Tbody TD</td>
<td>Tbody TD</td>
</tr>
</tbody>
</table>
Posso aggiungere che la soluzione Chrome/Safari non funziona molto bene per me, come io voglio cambiare il colore del bordo su al passaggio del mouse, che non è possibile se il bordo originale è doppio. Invece ho provato con altre varianti come inset etc, ma hanno un aspetto diverso nei vari browser. Sembra che l'unica soluzione possibile sia utilizzare un'immagine di sfondo TH come bordo, ma il problema è che deve essere posizionato a destra del TH in Firefox e IE, ma a sinistra in Chrome/Safari/Opera, per allinearsi con i reali confini dei TD di seguito. Comunque non voglio usare gli hack del browser. –