CSS  »  Guide  »  Guida CSS di base 

Agire sulle tabelle



Alcune proprietà dei CSS sono destinate alla modifica stilistica delle tabelle. Il supporto, chiariamolo subito, non è uniforme per tutti i browser. Mozilla brilla anche qui per la sua fedeltà agli standard, mentre Explorer Windows cade su parecchi aspetti.

Nell'analisi delle proprietà ci limiteremo all'enunciazione dei concetti di base, tralasciando la miriade di regole particolari e spesso complesse che ne governano il comportamento. Del resto, l'uso di queste proprietà è davvero molto ridotto, dal momento che gli stessi risultati possono essere ottenuti in diversi modi, anche con i tradizionali sistemi incorporati in (X)HTML.

Ad accompagnare la spiegazione teorica questa pagina di esempi e test.

table-layout

Questa proprietà imposta il metodo di layout di una tabella. Non è ereditata. Si applica solo alle tabelle.

Sintassi

<selettore> {table-layout: <valore>;}
ValoreDescrizione
autoIl layout della tabella viene definito automaticamente dal browser
fixedLe regole di presentazione sono quelle impostate dall'autore nel CSS

Nel caso del valore auto tutto è affidato al meccanismo di rendering dello user agent. Usando invece fixed possiamo innanzitutto definire la larghezza della tabella tramite la proprietà width. Volendo creare una tabella di 400px, quindi, scriveremo questa regola:

table {
  table-layout: fixed;
  width: 400px;
}

La stessa cosa si può ottenere in (X)HTML usando sempre l'attributo width:

<table width="400px">

Nella pagina di esempio abbiamo riportato un paio di casi speciali per spiegare meglio il meccanismo di funzionamento. In particolare abbiamo verificato cosa accade se si imposta auto come valore della proprietà width e il comportamento dei vari browser nei casi in cui si stabilisca una larghezza esplicita anche per le celle della tabella.

Esempi

table.tabella1 {table-layout: fixed;}

table {table-layout: auto;}

border-collapse

Attraverso questa proprietà possiamo stabilire in che modo trattare i bordi e gli spazi tra le celle di una tabella. Si applica solo alle tabelle ed è ereditata.

Sintassi

<selettore> {border-collpse: <valore>;}
ValoreDescrizione
collapseSe viene impostato un bordo, le celle della tabella lo condividono
separateSe viene impostato un bordo, ogni cella ha il suo, separato dalle altre. Lo spazio tra le celle e tra i bordi si imposta con la proprietà border-spacing

Esempi

table {
  border: 2px solid black;
  border-collapse: separate;
  border-spacing: 5px;
}

border-spacing

Imposta lo spazio tra le celle di una tabella. Va usata solo in presenza di un modello di border-collapse settato su separate. Proprietà ereditata e applicabile solo alle tabelle.

Sintassi

<selettore> {border-spacing: <valore>;}
ValoreDescrizione
<valore>un valore numerico con unità di misura

Esempi

Vedi sopra

empty-cells

Gestisce il trattamento delle celle di tabella senza contenuto. Agisce solo su quelle che non presentino al loro interno alcun tipo di markup, nemmeno il classico &nbsp; inserito in genere proprio per simulare la presenza di contenuto. Proprietà ereditata.

Sintassi

<selettore> {empty-cells: <valore>;}
ValoreDescrizione
showMostra i bordi della cella
hideI bordi non vengono mostrati e apparirà solo uno spazio vuoto

caption-side

Le buone norme dell'accessibilità vogliono che una tabella sia sempre preceduta da una sorta di titolo/riassunto. In (X)HTML questa funzione è demandata al tag <CAPTION> di cui riportiamo sotto un esempio di sintassi:

<table>
<caption>Titolo della tabella</caption>
<tr>
<td>...
</table>

La proprietà caption-side definisce il lato su cui vogliamo far comparire tale titolo. È ereditata. La supporta solo Mozilla.

Sintassi

<selettore> {caption-side: <valore>;}
ValoreDescrizione
topCaption sul lato superiore
rightCaption sul lato destro
bottomCaption sul lato inferiore
leftCaption sul lato sinistro

Esempi

table.tabella9 {
  table-layout : fixed;
  width : 300px;
  background : Silver;
  caption-side : bottom;
}

Ultimi articoli CSS

Bordi multipli con 'box-shadow' di CSS3

Il modo più rapido e semplice per circondare un box con più bordi di...

Sfumature lineari su IE6-9, linear-gradient CSS3 e un po' di SVG

Utilizzare la funzione linear-gradient CSS per creare sfumature...

Stili specifici per l'orientamento dell'iPad con le Media Queries

Gestire con gli stili e le media queries le modalità di...

Campo per la ricerca con i CSS

Dedicare la giusta attenzione al modulo per le ricerche, componente...

Box model 'naturale' con border-box

Dimenticare per sempre i problemi legati al box model grazie ad un...

Altri articoli

Guide CSS

Responsive Desing, la guida

Progettare siti da fruire su dispositivi diversi è imprescindibile...

Guida CSS3

Scoprire e usare al meglio tutte le novità dell'ultima versione dei...

Guida CSS Tecniche essenziali

Testo, immagini, layout, form, liste, tabelle: soluzioni pronte per...

Altre guide

Newsletter @CSS

Ogni mercoledì, direttamente nella tua e-mail: guide, articoli, tutorial, FAQ e approfondimenti tecnici su CSS e Web Design.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso Webmaster base

18 Giugno 2012 a Milano
Disponibilità: 6 Posti

Corso Google AdWords Base

25 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

05 Giugno 2012 a Roma
Disponibilità: 7 Posti

Corso Webmaster base

11 Giugno 2012 a Roma
Disponibilità: 7 Posti