Che cosa è successo ai tag di tabella HTML?


10

Ho iniziato a scrivere codice HTML nel 1998 e in quel momento ho usato molti tag table, giocando con tr e td, ho imparato molte cose analizzando il codice sorgente di molti portali su Internet con Blocco Note e Microsoft FrontPage, quest'ultimo, aw, quanti tavoli si sovrapponevano ad altri, è stato divertente, ho adorato quella volta.

Tuttavia, ho abbandonato la programmazione web per quasi sette anni e quest'anno ho deciso di vedere com'è la programmazione web oggi. Sembra completamente diverso, poiché la maggior parte dei siti non utilizza tag di tabella e utilizza invece tag div e span.

Perché è successo? Cosa sono questi nuovi tag e perché i tag da tavolo non vengono più utilizzati?


5
Stesso motivo per cui probabilmente usi Windows 7 invece di Windows 2000. La tecnologia si evolve. I tag di tabella sono ancora disponibili ma vengono utilizzati per quello che erano stati originariamente previsti, i dati tabulari non la formattazione della pagina.
Chris_O,

Risposte:


14

Il World Wide Web Consortium (W3C) ha sviluppato la prima specifica Cascading Style Sheets nel dicembre del 1996. Da allora i CSS (Cascading Style Sheets) si sono radicalmente evoluti e hanno reso la separazione del contenuto HTML dai dati di presentazione più comune tra i siti popolari.

Sebbene i siti attuali possano ancora fare affidamento su dichiarazioni di stile in linea per ottenere gli effetti desiderati, è molto più efficiente includere i dati di presentazione (altezza, larghezza, riempimento, margini, posizionamento assoluto ecc.) In un singolo file CSS a cui fa riferimento HTML multiplo documenti che aggiornare ogni istanza del contenuto HTML quando è necessario modificare la presentazione.

L'adozione del CSS da parte del browser non è avvenuta dall'oggi al domani (motivo per cui alcuni siti importanti si sono ancora basati su tabelle per ottenere una presentazione uniforme su una varietà di browser fino agli anni 2000) e, mentre alcuni browser continuano a differire nella loro implementazione delle specifiche CSS del W3C, grafiche i browser che non supportano CSS1 sono molto rari, quindi pochissimi siti popolari si basano su tabelle per ottenere presentazioni compatibili tra browser.

L'articolo 12 Lezioni per coloro che hanno paura dei CSS e degli standard (pubblicato nel 2006) su A List Apart e una revisione dell'istantanea CSS del W3C possono essere un buon punto di partenza se desideri recuperare la transizione dai layout basati su tabelle a CSS.


5

Senza entrare in un'intera storia dell'evoluzione degli sviluppatori web ... Le
tabelle non sono mai state pensate per fare layout di pagina; questa è la parte più importante. Usarli in quel modo fu una soluzione alternativa determinata dalla tecnologia dell'epoca, sia con specifiche incomplete che con browser incapaci. Alla fine questi problemi sono stati (principalmente) risolti e ora non è più necessario.

I siti SE sono generalmente per domande più pratiche, ad es. come posso ... ma se vuoi maggiori dettagli, molti libri HTML di livello principiante - e sembra che tu stia ricominciando da capo - hanno una visione sintetica di ciò che stai chiedendo come materiale introduttivo.


4

Le tabelle esistono ancora nelle specifiche html. Ma dovrebbero essere usati per visualizzare i dati in forma tabellare! (Sebbene il markup delle tabelle si sia leggermente evoluto, con le etichette di colonne e gruppi un po 'più facili da applicare in modo ragionevole).

Se hai immagini e contenuti di notizie che vuoi scrivere per una pagina web, dovresti stare ben lontano dalle tabelle per i motivi indicati da altre persone che rispondono a questa domanda.

Se si desidera visualizzare gli account di un mese in una pagina, quindi utilizzare le tabelle per farlo.


1

Non nessuno, alcuni anni fa (e comunque, se si supporta IE 6) le tabelle erano la scelta migliore per affermare lo stesso layout per tutti i browser.

I frame che si sono rifiutati di utilizzare le tabelle per eseguire il layout, come Ext, hanno terminato il calcolo dinamico delle dimensioni tramite la modifica degli stili al ridimensionamento, il che li ha resi buggy su alcuni browser (IE 6 menzionato in precedenza).

Le tabelle vengono ancora utilizzate come base per i layout di griglia in vari framework (ad esempio Icefaces).


1
Non solo IE6: il markup "Word HTML" utilizzato da Office significa che se si desidera inviare e-mail HTML "graziose" a Outlook è necessario utilizzare le tabelle.
Zhaph - Ben Duguid,

Le e-mail HTML sono l'eccezione, ma ci sono workarond non JS per la maggior parte dei glitch di IE6 senza ricorrere a layout basati su tabelle.
Lèse majesté,

-2

Li uso ancora segretamente.

Soprattutto sono ancora in HTML5: http://www.w3schools.com/html5/tag_table.asp . Quindi è perfettamente sicuro usarli per le tue esigenze di layout contorto.

Modifica: (dopo essere stato un po 'votato un po' in basso) Un ottimo esempio di "necessità di un layout contorto" è l'uso delle tabelle nelle e-mail di massa. Se vuoi che la tua junkmail sia sexy come l'effetto promesso del tuo prodotto, non puoi usare la maggior parte dei CSS.

Non uso sempre hack sporchi, ma quando lo faccio preferisco gli hack che dureranno per i prossimi dieci anni.



4
@Misha Stai collegando una fonte orribile, vedi w3fools.com
Lekensteyn,

1
Consiglio orribile. Stai trattenendo il web. I tag di tabella sono per i dati tabulari e non per la formattazione della pagina.
Chris_O,

Esigenze di layout contorte? Ecco a cosa servono il posizionamento assoluto e una miriade di indici Z.
CC Ricers il

1
La tua modifica ha comunque un buon punto. L'invio di e-mail HTML appropriate richiederà sempre tabelle.
Stephan Muller,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.