Bonjour,
Je suis certain que pas mal de personnes viennent lire ce sujet en se disant "ça sent le troll à plein nez". Le titre est volontairement assez provoquant, mais la question est bien réelle.
Je lis partout qu'il ne faut pas utiliser de tableau pour faire le design des sites. C'est pas accessible, c'est lourd, c'est pas prévu pour ça, ça respecte pas les standards.... Mettons de coté les apprioris, et voyons les faits :
Je ne considère que le cas où on utilise UN seul tableau pour le design du site (juste pour séparer le header, les menus, le contenu central, et le footer)
- Un design en tableau permet d'avoir un rendu graphique relativement propre (pas de soucis de compabilité avec IE par exemple, je n'en dirais pas tant des div avec les marges, leur placement etc)
- On dit que les tableaux allourdissent le code. Soit. Mais placer un div en spécifiant sa largeur, sa position horizontale, verticale, les margin, padding etc, je en suis pas certain que ce soit mieux...
- Imaginons quelqu'un qui est mal voyant, qui veux fortement grossir la police du site : avec un tableau, les colonnes s'élargieront, si besoin (cas d'un menu étroit, contenant un mot relativement long par exemple). Avec des divs, au pire le mot va dépasser du cadre et risquer de couvrir un autre texte, au mieu il sera partiellement caché. Dans tous les cas, pas très lisible. Oui je sais, un site n'est pas fait pour être trop grossi, mais l'utilisateur est roi. S'il veux le grossir au lieu d'utiliser des outils spécialisés (loupe etc), il doit pouvoir le faire, et le site devrait pouvoir rester lisible!
- En termes de présentation, maintenant : vaut-il mieux un site utilisant un tableau, mais bien présenté, ou un site utilisant des divs uniquement, mais présentant des bugs d'affichage dus à des problèmes de navigateurs interprétant plus ou moins bien le code?
- Parlons maintenant de l'odre d'affichage : avec un tableau, tout s'affiche de haut en bas, et de gauche à droite. Avec les divs, l'ordre d'affichage est chamboulé, lorsqu'on a des menus latéraux (affichage des menu gauche, puis droit, pour seulement le centre). Pourtant, le centre est souvent ce qui contient le contenu important. Il semblerait logique qu'il s'affiche avant le menu droit...
- prenons un autre exemple, où les tableaux sont souvent "déconseillés" : les formulaires. Là encore, gros problèmes s'il on met un <label> de largeur fixe : si le texte grossi, le label est caché. Et essayez de centrer correctement sur la page, un formulaire à base de div, de p, et de label... C'est un casse tête. Avec un tableau, ça va tout seul.
- Soyons réaliste : les designs actuels sont tout de même des design tabulaires (on a bien des "cases", qui souvent sont cote à cote, de même hauteur, contenant du texte....). Et faire un design sans tableau posera toujours des soucis d'accessibilité (c'est assez marrant, quand on prone l'accessibilité de ce type de design). Souvent dues au grossissement des mots.
Pour le moment, j'ai toujours utilisé des divs pour mes design, mais je dois reconnaître que les tableaux me tentent de plus en plus : ils sont mieux interprétés par les navigateurs, se mettent en place plus facilement pour un résultat meilleur (moins de bugs d'affichage).
Maintenant, avant que je tombe dans le coté obscure de la force, convainquez-moi de l'utilité des divs, dans un design de site! (je ne suis pas contre les divs, mais contre les design 100% avec div, et sans aucun tableau)
Je suis certain que pas mal de personnes viennent lire ce sujet en se disant "ça sent le troll à plein nez". Le titre est volontairement assez provoquant, mais la question est bien réelle.
Je lis partout qu'il ne faut pas utiliser de tableau pour faire le design des sites. C'est pas accessible, c'est lourd, c'est pas prévu pour ça, ça respecte pas les standards.... Mettons de coté les apprioris, et voyons les faits :
Je ne considère que le cas où on utilise UN seul tableau pour le design du site (juste pour séparer le header, les menus, le contenu central, et le footer)
- Un design en tableau permet d'avoir un rendu graphique relativement propre (pas de soucis de compabilité avec IE par exemple, je n'en dirais pas tant des div avec les marges, leur placement etc)
- On dit que les tableaux allourdissent le code. Soit. Mais placer un div en spécifiant sa largeur, sa position horizontale, verticale, les margin, padding etc, je en suis pas certain que ce soit mieux...
- Imaginons quelqu'un qui est mal voyant, qui veux fortement grossir la police du site : avec un tableau, les colonnes s'élargieront, si besoin (cas d'un menu étroit, contenant un mot relativement long par exemple). Avec des divs, au pire le mot va dépasser du cadre et risquer de couvrir un autre texte, au mieu il sera partiellement caché. Dans tous les cas, pas très lisible. Oui je sais, un site n'est pas fait pour être trop grossi, mais l'utilisateur est roi. S'il veux le grossir au lieu d'utiliser des outils spécialisés (loupe etc), il doit pouvoir le faire, et le site devrait pouvoir rester lisible!
- En termes de présentation, maintenant : vaut-il mieux un site utilisant un tableau, mais bien présenté, ou un site utilisant des divs uniquement, mais présentant des bugs d'affichage dus à des problèmes de navigateurs interprétant plus ou moins bien le code?
- Parlons maintenant de l'odre d'affichage : avec un tableau, tout s'affiche de haut en bas, et de gauche à droite. Avec les divs, l'ordre d'affichage est chamboulé, lorsqu'on a des menus latéraux (affichage des menu gauche, puis droit, pour seulement le centre). Pourtant, le centre est souvent ce qui contient le contenu important. Il semblerait logique qu'il s'affiche avant le menu droit...
- prenons un autre exemple, où les tableaux sont souvent "déconseillés" : les formulaires. Là encore, gros problèmes s'il on met un <label> de largeur fixe : si le texte grossi, le label est caché. Et essayez de centrer correctement sur la page, un formulaire à base de div, de p, et de label... C'est un casse tête. Avec un tableau, ça va tout seul.
- Soyons réaliste : les designs actuels sont tout de même des design tabulaires (on a bien des "cases", qui souvent sont cote à cote, de même hauteur, contenant du texte....). Et faire un design sans tableau posera toujours des soucis d'accessibilité (c'est assez marrant, quand on prone l'accessibilité de ce type de design). Souvent dues au grossissement des mots.
Pour le moment, j'ai toujours utilisé des divs pour mes design, mais je dois reconnaître que les tableaux me tentent de plus en plus : ils sont mieux interprétés par les navigateurs, se mettent en place plus facilement pour un résultat meilleur (moins de bugs d'affichage).
Maintenant, avant que je tombe dans le coté obscure de la force, convainquez-moi de l'utilité des divs, dans un design de site! (je ne suis pas contre les divs, mais contre les design 100% avec div, et sans aucun tableau)