5176 sujets

Le Bar du forum

Bonjour,

Les sites que j'ai développés depuis quelques années ont tous étés mis en pages grâce aux tableaux.
En lisant quelques articles sur le web traitant de la mise en page, je me suis aperçu que le CSS était en fait l'instrument de mise en page par excellence.
J'ai donc potassé un peu la chose, et c'est là que je me suis rendu compte de la difficulté à mettre en oeuvre cette méthode mais pas a cause du CSS en lui même mais plutôt a cause du manque de rigueur de l'application de la norme par les développeurs de navigateur.
Et je me demande, si ce n'est pas à cause de cela, que les tableaux sont encore employés.

Je me trompe ?
Et bien pour ma part, depuis que j'ai découvert xHTML/CSS Raphael et Laurent, je suis réellement incapable de réfléchir autrement quand bloc stylé..


je ne me souvient même plus avoir des brouettes de sites mis en page avec des tableaux....

Smiley confused
Bonjour et bienvenue sur le forum des adeptes !

Il y a un cap à passer pour basculer. Parfois il faut peut-être savoir renoncer à certaines habitudes. C'est une autre façon de penser une page web, nettement plus perenne.

Il est tout à fait possible aujourd'hui de faire un site comptatible avec les navigateurs les plus utilisés tout en restant lisible avec les générations plus anciennes.

C'est quoi déjà la balise pour faire des tableaux, j'ai un trou de mémoire ?
Smiley cligne

Allez, il suffit de s'y mettre !
Smiley biggrin
Slt,

SoGood a écrit :
Et je me demande, si ce n'est pas à cause de cela, que les tableaux sont encore employés.


c'est sans doute en partie vrai, quoique

À mon avis, le problème c'est que les "webmasters" remettent difficilement en cause leur façon de programmer. Et puisqu'en général, c'est l'aspect visuel qui est déterminant chez les clients et que les tables parviennnent en général à faire ce que l'on veut, lesdits webmasters n'ont pas envie de tout réapprendre pour des objectifs (accessibilité, poids réduit, etc) dont le client se fout.

a+
Pour ma part, je suis tout à fait convaincu de la puissance des CSS.
Comme le dit Vero, je pense qu'il faut une période d'adaptation pour apprendre à jongler entre les différents navigateurs.
Mais il n'en resta pas moins, que je trouve que c'est un casse-tête pour les webmasters et qu'une norme est justement faite pour harmoniser les choses mais aussi pour faciliter le développement.
Mais faut-il encore la suivre.
Modérateur
SirWam a écrit :
lesdits webmasters n'ont pas envie de tout réapprendre pour des objectifs (accessibilité, poids réduit, etc) dont le client se fout.


Quoique cette affirmation ne soit pas toujours vraie. J'ai réalisé un site il y a quelques semaines et lorsque j'ai expliqué à la cliente les normes de qualité que j'avais respecté, elle a été très curieuse. Je lui ait brièvement expliqué ce qu'était la sémantique web, entre autres choses, et elle a tellement trouvée ca intéressant qu'elle veut que je rédige éventuellement un article sur le sujet afin qu'elle puisse le publier sur son site. La cliente est la présidente d'une agence de communication. Je dirais donc que les clients peuvent s'intéresser au côté technique lorsqu'on prends le temps de leur expliquer, et en détaillant les avantages, sans pour autant les noyer dans des termes trop sophistiqués.

Bon pour en revenir à la question de départ, j'ai davantage l'impression que ce qui fait en sorte que certains développeurs utilisent les tableaux, c'est :

- Qu'ils n'osent pas remettre en question leur façon de faire
- Ils ne sont pas ou peu au courant de ce que sont les normes W3C, la mise en page CSS, l'accessibilité et les normes de qualité, et de leurs avantages.
- Ils ont des limitations au niveau de leurs compétences : ils utilisent un WYSIWYG depuis 10 ans, et ils ne savent pas trop ce qu'est du HTML finalement. Eh oui, ca l'existe.
- Ils croient à tort que ce passage vers les normes et la mise en page CSS sera coûteux et difficile. C'est seulement une fois qu'on s'est formé à ca qu'on réalise les avantages et qu'au contraire, le développement d'un site devient moins coûteux.
- Ils ont peur tout simplement de l'évolution.

Il y a certainement d'autres raisons que j'ai oublié.

À force de ne pas avancer, ces gens vont tout simplement reculer ou disparaître. Tôt ou tard, s'ils veulent rester sur le marché professionnel, ils devront s'adapter au monde d'aujourd'hui.
Modifié par Merkel (31 Aug 2005 - 21:19)
Bonsoir,

Quatre choses à prendre en compte:

On oublie souvent que "les tableaux".. souffraient d'une dose comparable d'implémentations divergentes. Le temps et l'expérience aidant, on en était venu à utiliser naturellement toutes les petites astuces qui faisaient que "les tableaux passaient".

Passer d'un système à l'autre, c'est souvent devoir désapprendre pour réapprendre. Ce retour à la case départ est une difficulté bien réelle.

Nous ne disposons pour la partie complexe de CSS que d'une partie seulement des outils : la mise en page sans inline-block, run-in et sans display:table, en particulier, n'a pas grand-chose à voir avec ce que pourrait-être vraiment la mise en page CSS.

Nous devons faire face à un navigateur schizophrénique, IE Windows, dans lequel s'affrontent en permanence deux modèles de rendu, l'un tentant de refléter la norme, et l'autre obéissant à de toutes autres priorités. Avec des résultats qui ont un coût évident.
Laurent Denis a écrit :
Passer d'un système à l'autre, c'est souvent devoir désapprendre pour réapprendre. Ce retour à la case départ est une difficulté bien réelle.


Pas toujours facile à faire passer le mot Smiley bawling .. Mais un jour, les TABLE ne serviront plus qu'a manger (ou à autre chose mais c'est censuré !), j'en suis convaincus Smiley smile
Groumphy a écrit :


Pas toujours facile à faire passer le mot Smiley bawling .. Mais un jour, les TABLE ne serviront plus qu'a manger (ou à autre chose mais c'est censuré !), j'en suis convaincus Smiley smile


Hum. Oui. Grâce à display:table qui permettra de faire à l'identique du point de vue construction du "dessin", avec de belles dérives en perspectives sur l'ordre du contenu HTML Smiley cligne
SoGood a écrit :

Comme le dit Vero, je pense qu'il faut une période d'adaptation pour apprendre à jongler entre les différents navigateurs.


Je voulais plutôt dire : il faut une période d'adaptation pour accepter un certain nombre de choses, notamment "lâcher prise" sur le rendu visuel et s'adapter véritablement, non pas aux navigateurs, mais au média et à la façon de l'exploiter, tout simplement.

Car, en fin de compte, je me souviens avoir jonglé entre les navigateurs à l'époque des tables, peut-être plus que maintenant, dès qu'il s'agissait de mettre au point un menu déroulant en javascript ou je ne sais quelle fonctionnalité dynamique, finalement très discuttable quant à l'ergnomie et l'efficacité.
Modifié par Vero (02 Sep 2005 - 17:41)
Laurent Denis a écrit :


Hum. Oui. Grâce à display:table qui permettra de faire à l'identique du point de vue construction du "dessin", avec de belles dérives en perspectives sur l'ordre du contenu HTML Smiley cligne


Je ne suis pas trop fan du display: table.

Ça limite certaines possibilités qu'on a avec les blocs flottants (ou les "futurs" blocs en ligne). Je voudrais juste, moi, avoir la possibilité d'aligner la hauteur de plusieurs blocs flottants ou en ligne adjacents sur le plus grand d'entre eux. Si j'avais ça, je serais le plus heureux des ouèbemasteurs. Smiley cligne (Tiens faut que je cherche si c'est théoriquement possible avec les blocs en ligne, ça, je viens d'avoir une idée)

De plus, et comme tu le dis ça peut amener à réorganiser le HTML d'une façon pas glop.

D'ailleurs c'est la plus grosse limitation de CSS à mon sens, ne pas pouvoir changer l'ordre des élément à l'affichage, ce qui fait qu'on est parfois (souvent ?) obligé d'intervenir sur la structure du document pour avoir le rendu souhaité. (ex: le sacro-saint menu en haut, mais qui serait mieux en bas).

Edit : réorganisation de l'ordre de mon post.
Smiley biggol
Modifié par Lanza (01 Sep 2005 - 10:51)
En point un, je dirais l'ignorance... Combien de webmasters, même pro, ont la chance d'avoir une obligation comme moi ( site institutionel) pour se pencher sur le problème, comme Raphaël si j'ai bien suivi de rencontrer un handicapé devant un site ou tout simplement d'être au courant ?

En point deux, une fois informé (mais sans mon obligation), la flemme... Ben oui, passer de tableaux qui font ce qu'on veut à CSS qui n'en fait qu'à sa tête Smiley cligne ce n'est pas si simple, surtout sans remettre en question le physique... La démarche de Véro quoi, faire passer l'accessibilité devant l'aspect du site...

En trois, les outils utilisés qui font du tableau tout seul...

En quatre, le client qui veut tout et tout de suite...

Perso, j'ai de la chance : pas de point 3 et pas de point 4 (je peux dire non comme je veux pour l'instant Smiley biggol )

Par contre niveau validation du code, c'est fou le temps que je perd à tout remettre en ordre !!!
Lanza a écrit :


Je ne suis pas trop fan du display: table.

Ça limite certaines possibilités qu'on a avec les blocs flottants (ou les "futurs" blocs en ligne). Je voudrais juste, moi, avoir la possibilité d'aligner la hauteur de plusieurs blocs flottants ou en ligne adjacents sur le plus grand d'entre eux. Si j'avais ça, je serais le plus heureux des ouèbemasteurs. Smiley cligne (Tiens faut que je cherche si c'est théoriquement possible avec les blocs en ligne, ça, je viens d'avoir une idée)

De plus, et comme tu le dis ça peut amener à réorganiser le HTML d'une façon pas glop.

D'ailleurs c'est la plus grosse limitation de CSS à mon sens, ne pas pouvoir changer l'ordre des élément à l'affichage, ce qui fait qu'on est parfois (souvent ?) obligé d'intervenir sur la structure du document pour avoir le rendu souhaité. (ex: le sacro-saint menu en haut, mais qui serait mieux en bas).


Hahem. C'est exactement le contraire.
- display-table est une excellent moyen de réaliser des alignements et des dimensionnements verticaux (le modèle de formattage des tableaux est conçu à cet effet, contrairement au modèle "en ligne", justement)
- CSS offre toutes libertés de dissocier ordre "naturel" du HTML et organisation visuelle, sans avoir à modifier l'ordre HTML (en bien comme en mal pour l'utilisateur).
Modifié par Laurent Denis (01 Sep 2005 - 11:27)
Et pourtant, il me semble maintenant que c'est plus rapide de monter une page et de montrer quelque chose, même si cela ne paye pas de mine sur le plan du design.

Si on ne cherche pas midi à quatorze heure, on peut arriver à un aspect pro "assez facilement".
Le secret : faire simple au départ. Si l'idée nécessite d'employer des tas d'astuces, laisser tomber l'idée ...

S'interesser un peu à l'ergonomie, être attentif à la lisibilité sont des approches payantes.

Comme pour toute chose, arriver à un résultat talentueux necessite une bonne expertise et de l'expérience.

La séparation du style et du contenu permet d'améliorer l'apparence au fur et à mesure, finalement. Il faut bien penser la structure au départ, dans une optique évolutive.

J'ai très peu de recul , je l'avoue, mais j'ai vraiment ce sentiment.
Laurent Denis a écrit :


Hahem. C'est exactement le contraire.
- display-table est une excellent moyen de réaliser des alignements et des dimensionnements verticaux (le modèle de formattage des tableaux est conçu à cet effet, contrairement au modèle "en ligne", justement)


Si j'en crois les specs c'est à la base pour permettre à des documents XML de présenter des données de façon tabulaire.

Il faut que je creuse la question mais est-ce qu'il est possible avec un display:table (ou table-cell) d'avoir un nombre variable de cellules de largeur fixe sur la même ligne, selon la taille du viewport ?



a écrit :

- CSS offre toutes libertés de dissocier ordre "naturel" du HTML et organisation visuelle, sans avoir à modifier l'ordre HTML (en bien comme en mal pour l'utilisateur).


Oui, mais dans ce cas, les élements que tu bouges sont retirés du flux. Dans le cas de mon menu de bas de page que je veux remonter, ça m'oblige à le mettre en position absolue, et pour peu qu'il soit de hauteur variable, résinsérer le reste du contenu en dessous comme s'il s'agissait du flux normal devient un vrai casse tête.
Modifié par Lanza (01 Sep 2005 - 12:02)
Lanza a écrit :


Si j'en crois les specs c'est à la base pour permettre à des documents XML de présenter des données de façon tabulaire.


Non. C'est juste fait pour adopter, quelque soit le format, le modèle de rendu visuel tabulaire. Qui est strictement équivalent à celui des flottants, des éléments positionnés, des éléments en flux, etc. Juste une question de rendu graphique de n'importe quel type de données. reste à savoir si leur structure est utilisable indépendament de CSS. Autrement-dit, s'ils ont une structure.

Lanza a écrit :

Il faut que je creuse la question mais est-ce qu'il est possible avec un display:table (ou table-cell) d'avoir un nombre variable de cellules de largeur fixe sur la même ligne, selon la taille du viewport ?


Comme pour toute autre CSS, oui : via Media Queries (module HTML CSS qui n'est actuellement implémenté que par Opera à titre de test).
Modifié par Laurent Denis (01 Sep 2005 - 13:27)