Perché vengono utilizzate così tante tabelle HTML nel markup della pagina?

8

Sto cercando di entrare nello sviluppo web, quindi ho iniziato a imparare HTML, CSS e javascript. Sono andato molto bene con javascript, ma non riesco ancora a creare nulla con HTML e CSS per salvarmi la vita. Stavo per chiedere alcuni posti o consigli per migliorare, ma so che la domanda è stata posta infinite volte e che sarebbe stata appena cancellata, quindi ho pensato di vedere solo la fonte di alcuni siti web di altre persone.

Quello che continuo a vedere sono le tabelle sinistra e destra. C'è un motivo valido per usare le tabelle?

    
posta mowwwalker 15.09.2011 - 09:11
fonte

4 risposte

16

Per disporre i dati tabulari.

Ecco alcune domande da porsi quando scegli tra tabelle e contenitori css.

Tables are for Tabular Data. Period.

The <table> tag is not evil. Despite what some people think and say, the point of CSS is not to never use it. However, a corollary to the principle of Semantic HTML is that you should never use tables for layout. Let me say that again, as its own paragraph, for emphasis:

Never use tables for layout. Ever.

If you can't decide whether or not a table is the right choice, ask yourself these questions:

  • “Do the rows or columns of information share a common attribute?”
  • “If I changed the order of the rows or columns, would it still make sense?”
  • “If I transposed the axes of the table (made rows into columns and vice-versa) would it still make sense?”

If the answer to the above is generally “Hrm...I guess not,” then you shouldn't be using a table.

If you need more convincing, see "Why Tables Are Bad (For Layout) Compared to Semantic HTML + CSS".

    
risposta data 15.09.2011 - 09:19
fonte
9

Supponendo che intendi le tabelle utilizzate come layout di pagina anziché solo per i dati tabulari ...

Stai vedendo le tabelle perché il CSS è frustrante da usare (certamente meno di alcuni anni fa). A un certo punto si deve finire il lavoro. Per farlo "giusto" usando i CSS, è necessario un agitarsi e sperimentare senza fine. Le tabelle, d'altra parte, possono essere afferrate intuitivamente.

Se vuoi farlo nel modo giusto (usando i CSS) e non vuoi sprecare la tua vita sui CSS, il miglior compromesso è quello di accontentarsi di alcuni layout diversi e di estrapolare alcuni CSS dai siti web dei modelli. Usa i modelli come punto di partenza. Partire da zero con i CSS è una ricetta per la frustrazione.

    
risposta data 15.09.2011 - 15:31
fonte
8

I layout basati su tabelle sono in qualche modo, più facili da imparare rispetto ai puri layout CSS per le persone che iniziano a imparare l'HTML. Inoltre, nel corso della giornata, non è possibile utilizzare in modo affidabile CSS e farlo funzionare su tutti i browser. Quindi praticamente tutte le esercitazioni HTML fino alle 2000 o più tabelle utilizzate esclusivamente per i layout. Un sacco di quel codice HTML è stato passato ad altri siti (tramite View Source) e molte persone hanno imparato da questi tutorial e non si sono preoccupati di imparare i layout CSS.

Mi offrirò di essere fiammeggiato qui e di dire che starai bene se inizi a fare i tuoi layout nelle tabelle prima di imparare i CSS. Le differenze a livello di principiante sono minori nella migliore delle ipotesi. Non sarai in grado di creare layout davvero intriganti fino a quando non avrai avuto un anno o due di esperienza, quindi non c'è davvero molta differenza. Inizia con i tavoli per ottenere alcune cose sullo schermo e per mantenere l'interesse, e continua a leggere su CSS (che è chiaramente superiore nel lungo periodo). Ero un CSS-Zealot nel giorno di "Progettare con gli standard Web", ma solo perché era divertente essere autoritario e superiore.

    
risposta data 15.09.2011 - 14:43
fonte
1

I browser sono il problema. Nonostante ciò che era best practice e ciò che tutti erano d'accordo, era troppo difficile rendere i siti web sempre buoni nei browser senza tabelle, anche se era codificato in modo errato. Ha a che fare con la semantica. Questa è la cosa più importante da imparare con HTML, sono i significati semantici dei tag. Il posto migliore per imparare che è nei primi cinque video che Educator.com ha sui suoi video HTML, è tutto fatto con HTML5 in mente e spiega cos'è la semantica e perché è importante.

    
risposta data 16.09.2011 - 03:43
fonte

Leggi altre domande sui tag