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.
Questa proprietà imposta il metodo di layout di una tabella. Non è ereditata. Si applica solo alle tabelle.
Sintassi
<selettore> {table-layout: <valore>;}| Valore | Descrizione |
|---|---|
auto | Il layout della tabella viene definito automaticamente dal browser |
fixed | Le 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;}
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>;}| Valore | Descrizione |
|---|---|
collapse | Se viene impostato un bordo, le celle della tabella lo condividono |
separate | Se 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;
}
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>;}| Valore | Descrizione |
|---|---|
<valore> | un valore numerico con unità di misura |
Esempi
Vedi sopra
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 inserito in genere proprio per simulare la presenza di contenuto. Proprietà ereditata.
Sintassi
<selettore> {empty-cells: <valore>;}| Valore | Descrizione |
|---|---|
show | Mostra i bordi della cella |
hide | I bordi non vengono mostrati e apparirà solo uno spazio vuoto |
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>;}| Valore | Descrizione |
|---|---|
top | Caption sul lato superiore |
right | Caption sul lato destro |
bottom | Caption sul lato inferiore |
left | Caption sul lato sinistro |
Esempi
table.tabella9 {
table-layout : fixed;
width : 300px;
background : Silver;
caption-side : bottom;
}
Bordi multipli con 'box-shadow' di CSS3Il 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 SVGUtilizzare la funzione linear-gradient CSS per creare sfumature... |
Stili specifici per l'orientamento dell'iPad con le Media QueriesGestire con gli stili e le media queries le modalità di... |
Campo per la ricerca con i CSSDedicare la giusta attenzione al modulo per le ricerche, componente... |
Box model 'naturale' con border-boxDimenticare per sempre i problemi legati al box model grazie ad un... |
Responsive Desing, la guidaProgettare siti da fruire su dispositivi diversi è imprescindibile... |
Guida CSS3Scoprire e usare al meglio tutte le novità dell'ultima versione dei... |
Guida CSS Tecniche essenzialiTesto, immagini, layout, form, liste, tabelle: soluzioni pronte per... |
Ogni mercoledì, direttamente nella tua e-mail: guide, articoli, tutorial, FAQ e approfondimenti tecnici su CSS e Web Design.
Iscriviti alla newsletter
|
|
Corso Webmaster base18 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |
|
|
Corso Webmaster base11 Giugno 2012 a Roma |