Qu'est-il arrivé aux balises de table HTML?

10

J'ai commencé à coder HTML en 1998, et à cette époque, j'utilisais beaucoup de balises de table, en jouant avec tr et td, j'ai appris beaucoup de choses en analysant le code source de nombreux portails sur Internet avec le bloc-notes et Microsoft FrontPage, ce dernier, aw, combien de tables se chevauchaient, c'était amusant, j'ai adoré cette fois.

Cependant, j'ai abandonné la programmation Web pendant près de sept ans et cette année, j'ai décidé de voir à quoi ressemble la programmation Web aujourd'hui. Cela semble complètement différent, car la plupart des sites n'utilisent pas de balises de table et utilisent plutôt des balises div et span.

Pourquoi est-ce arrivé? Quelles sont ces nouvelles balises et pourquoi les balises de table ne sont plus utilisées?

John
la source
5
Même raison pour laquelle vous utilisez probablement Windows 7 au lieu de Windows 2000. La technologie évolue. Les balises de tableau sont toujours là mais elles sont utilisées pour ce à quoi elles étaient initialement destinées, les données tabulaires et non le formatage des pages.
Chris_O

Réponses:

14

Le World Wide Web Consortium (W3C) a développé la première spécification de feuilles de style en cascade en décembre 1996. Les feuilles de style en cascade (CSS) ont depuis radicalement évolué et ont rendu la séparation du contenu HTML des données de présentation plus courante parmi les sites populaires.

Bien que les sites actuels puissent toujours s'appuyer sur des déclarations de style en ligne pour obtenir les effets souhaités, il est beaucoup plus efficace d'inclure des données de présentation (hauteur, largeur, remplissage, marges, positionnement absolu, etc.) dans un seul fichier CSS référencé par plusieurs HTML documents que de mettre à jour chaque instance du contenu HTML lorsque la présentation doit être modifiée.

L'adoption de CSS par les navigateurs ne s'est pas produite du jour au lendemain (c'est pourquoi certains sites majeurs se sont toujours appuyés sur des tableaux pour obtenir une présentation uniforme sur une variété de navigateurs jusque dans les années 2000) et, bien que certains navigateurs continuent de différer dans leur mise en œuvre des spécifications CSS du W3C, graphiques les navigateurs qui ne prennent pas en charge CSS1 sont très rares, donc très peu de sites populaires s'appuient sur des tableaux pour obtenir une présentation compatible avec tous les navigateurs.

L'article 12 Leçons pour ceux qui ont peur des CSS et des normes (publié en 2006) dans A List Apart et un examen du CSS Snapshot du W3C peuvent être un bon point de départ si vous souhaitez rattraper la transition des dispositions basées sur des tableaux à CSS.

danlefree
la source
5

Sans entrer dans toute une histoire de l'évolution des développeurs web ... Les
tables n'ont jamais été conçues pour faire la mise en page; c'est l'élément le plus important. Les utiliser de cette façon était une solution de contournement provoquée par la technologie de l'époque, à la fois des spécifications incomplètes et des navigateurs incapables. Finalement, ces problèmes ont été (principalement) résolus et maintenant ce n'est plus vraiment nécessaire.

Les sites SE sont généralement destinés à des questions plus pratiques, par exemple. comment puis-je ... mais si vous voulez plus de détails, de nombreux livres HTML de niveau débutant - et il semble que vous commenciez partout - ont un aperçu condensé de ce que vous demandez comme matériel d'introduction.

Su '
la source
4

Les tables existent toujours en spécification html. Mais ils doivent être utilisés pour afficher les données sous forme de tableau! (Bien que le balisage de table ait quelque peu évolué, les étiquettes de colonne et de groupe sont un peu plus faciles à appliquer de manière sensée).

Si vous avez des photos et du contenu d'actualités que vous souhaitez rédiger pour une page Web, vous devez vous tenir à l'écart des tableaux pour les raisons exposées par d'autres personnes qui ont répondu à cette question.

Si vous souhaitez afficher les comptes d'un mois sur une page, vous devez certainement utiliser des tableaux pour ce faire.

peuroffours
la source
1

Pas personne, il y a quelques années (et toujours, si vous supportez IE 6), les tables étaient le meilleur choix pour affirmer la même disposition pour tous les navigateurs.

Les cadres qui refusaient d'utiliser des tableaux pour faire la mise en page, comme Ext, ont fini de calculer les dimensions dynamiquement en changeant les styles lors du redimensionnement, ce qui les a fait fonctionner en buggy sur certains navigateurs (IE 6 mentionné précédemment).

Les tableaux sont toujours utilisés comme base pour les dispositions de grille dans divers cadres (Icefaces par exemple).

Marin danubien
la source
1
Pas seulement IE6 - le balisage "Word HTML" utilisé par le bureau signifie que si vous souhaitez envoyer de "jolis" e-mails HTML à Outlook, vous devez utiliser des tableaux.
Zhaph - Ben Duguid
Les e-mails HTML sont l'exception, mais il existe des solutions de contournement non JS pour la plupart des problèmes IE6 sans recourir à des dispositions basées sur des tables.
Lèse majesté
-2

Je les utilise secrètement.

Plus important encore, ils sont toujours en HTML5: http://www.w3schools.com/html5/tag_table.asp . Il est donc parfaitement sûr de les utiliser pour vos besoins de disposition tordue.

Edit: (Après avoir été un peu rejeté) Un bon exemple d'un "besoin de mise en page tordue" est d'utiliser des tableaux dans vos e-mails de masse. Si vous voulez que votre junkmail soit aussi sexy que l'effet promis de votre produit, vous ne pouvez pas utiliser la plupart des CSS.

Je n'utilise pas toujours de hacks sales, mais quand je le fais, je préfère les hacks qui dureront pendant les dix prochaines années.

Mikhail
la source
4
@Misha Vous liez une horrible source, voir w3fools.com
Lekensteyn
1
Horrible conseil. Vous retenez le Web. Les balises de tableau sont destinées aux données tabulaires et non au formatage de la page.
Chris_O
Besoins de mise en page tordue? C'est à cela que servent le positionnement absolu et une myriade d'indices Z.
CC Ricers
1
Votre modification a cependant un bon point. L'envoi d'e-mails HTML appropriés nécessitera toujours des tableaux.
Stephan Muller