Ogni elemento in
HTML ha una precisa funzione, le tabelle servono per creare tabelle di dati (tanto è vero che le celle si chiamano
TD, Table Data), non per disporre vari elementi della pagina in un determinato modo. Purtroppo molti usano in modo improprio gli elementi
HTML come
P,
BR,
TABLE proprio perché pensano all'aspetto della pagina. Niente di più sbagliato, con l'HTML si definisce il contenuto del documento, seguendo l'ordine logico. Il CSS è il responsabile dell'aspetto e dell'ordine grafico.
Tutto questo non per questioni filosofiche, ma per aiutare i sistemi automatici (screen reader o spider) a comprendere com'è formato il documento e che ruolo hanno tutte quelle scritte che per un computer non hanno senso. Infine, una suddivisione logica tra aspetto e contenuto permette di gestirli separatamente con facilità, è così possibile cambiare l'aspetto di tanti documenti cambiando un singolo foglio di stile.
Una buona lettura:
http://www.w3.org/TR/html4/struct/tables.html