Bonjour,
Quel est l'objet du débat ? Ou plutôt, des multiples débats qui s'entrecroisent ici :
- la facilité de réalisation en CSS v. en tableaux ?
- les limites inhérentes à CSS ou liées à ses implémentations ?
- les techniques de centrage horizontal et vertical non obstructives ?
- la démarche des donneurs d'ordre et leur conception de la page Web ?
La facilité avec laquelle on peut réaliser telle ou telle mise en page avec CSS ou à l'ancienne est question entièrement subjective à laquelle chacun répond selon son expérience. Je ne crois pas qu'il y ait vraiment matière à polémique.
Les limites inhérentes à CSS, il y en a. Même en ignorant les problèmes d'implémentation dans les navigateurs, CSS2.1 a des capacités théoriques limitées. Par exemple : il est possible d'utiliser diverses propriétés pour réaliser des mises en page en colonne, mais aucune ne correspond à un véritable colonnage (répartition du flux sur deux colonnes en fonction de sa longueur, par exemple). Il n'y a aucune raison de les nier.
Ces limites se conjuguent aux limites des techniques d'accessibilité : le centrage vertical posera des problèmes d'accessibilité faute d'outils permettant au navigateur de manipuler, par exemple, les éléments ainsi présentés pour les rendre pleinement accessible au clavier. Les menus déroulants et autres
widgets tentant de faire des interfaces riches sur la base du HTML ne peuvent pas non plus être manipulés pour être rendus accessibles.
XHTML1.x et css2.x sont effectivement des formats aux capacités limitées. Des formats plus puissants sont donc en cours de développement, pour répondre à des besoins évidents, notament en matière de mise en page. Reste qu'on se trouve dans l'obligation de "faire avec" XHTML1.x et CSS2.x et de contourner ces limites. C'est ce que l'on fait quotidiennement en utilisant les flottants ou le positionnement absolu comme seuls outils de colonnage. Ces contournements sont plus ou moins satisfaisants. Mais il faut garder à l'esprit que ce sont des
contournements qui ne remettent pas en cause la technique elle-même, mais son état actuel de développement.
S'y ajoutent les questions d'implémentation : CSS2.1 est partiellement implémentée actuellement, que ce soit par Firefox, Opera etc. ou plus encore par Internet Explorer. Là encore, cela contraint à contourner de nouvelles limites. Display:table permet de centrer verticalement et de réaliser des colonnes avec facilité, mais son absence de support par Internet Explorer oblige à se replier sur des astuces de hauteurs, de marges, etc. dans celui-ci. Display: inline-block permet de réaliser facilement certains effets de centrage horizontaux ou de colonnes, mais son absence de support dans Firefox oblige, là encore, à passer par des contournements.
Donc, il y a de nouvelles difficultés quand on développe sa CSS. Et à nouveau du temps à dépenser. Mais tomber dans une vision "figée" du problème est une erreur. Ces implémentations ont considérablement progressé depuis deux ou ans, et continuent à le faire à un rythme accéléré. Lorsque qu'on apprend, comme on vient de le faire hier, que la prochaine version d'Opera implémentera les
Web forms 2.0 développés à l'initiative commune d'Opera, de Mozilla et de Safari... on prend la mesure de ces progrès de plus en plus rapprochés.
En particulier, il est plus que temps de se sortir du cliché "IE sera toujours à la traîne, IE7, c'est de la daube et de la blague, j'y crois pas". Mais pour cela, il faut commencer par lire ce qui est documenté à son sujet, au lieu de parler dans le vide. C'est une difficulté de plus, indéniable : Le Web n'est pas statique (il ne l'a jamais été), et nécessite un effort de formation et d'information permanent.
Une remarque, au passage : malgré ces implémentations encore partielles, il est faux de dire que les hacks CSS sont aujourd'hui une nécessité parce qu'il faudrait hacker dans tous les sens une CSS en fonction de tous les navigateurs. Les implémentations de Firefox, Opera et Safari sont aujourd'hui fortement convergentes, et les résolutions de bugs de rendu se multiplient à chaque version. En réalité, ces fameux bugs si exapsérants sont essentiellement ceux d'IE Windows et Mac, et la plupart des mises en pages complexes ne nécessitent ces hacks que pour cette famille de navigateurs. Ou plutôt que des hacks, des CSS en commentaires conditionnels bien plus faciles à gérer. Là encore, de nombreux développeurs CSS ont dans ce domaine bien des habitudes à revoir.
Le centrage horizontal et vertical d'une page Web entière, pour sa part, pose un problème bien spécifique. Ce n'est pas le centrage qui est vraiment en cause. Mais cette "réduction figée de l'affichage" tout droit issue des habitudes de design de l'imprimé. Le design Web n'est pas, contrairement à ce que pratiquent de très nombreux designers, une extension du design "classique". C'est un domaine entièrement différent. Là encore, il y a un apprentissage à faire, et des conceptions à revoir.
Enfin, ceci est encore plus vrai pour les donneurs d'ordre. Non seulement le design, mais toutes les notions de contenu, structure et comportement, sont très mal compris par de nombreux donneurs d'ordre qui les abordent comme s'il s'agissait des médias classique qui leurs sont familiers. Les développements Web irréfléchis de ces dernières années ont en outre créé des précédents fâcheux : le client demande, ou exige, ou impose ceci ou cela... sans savoir que ce n'est pas parce que c'est techniquement
réalisable et qu'il l'a déjà vu faire que c'est
approprié sur ce media. Voir à ce sujet les excellentes interventions de jcm et de jpv dans
ce sujet qui porte justement sur le centrage.
En conclusion, la grande révolution culturelle à accomplir chez les donneurs d'ordre comme chez les designers réside sans doute dans le "
lâcher prise" sur l'image au sens large apporté par le Web. Le design tout entier tout entier étant une image de l'entreprise, ainsi que de la compétence et du talent du designer, il n'est pas évident d'accepter de ne plus maîtriser étroitement celle-ci. Chaque internaute, chaque configuration de rendu, chaque application, chaque implémentation... en fera potentiellement quelque-chose de différent. C'est la grande peur du Web, mais c'est surtout sa grande force et l'un de ses principaux apports.
Modifié par Laurent Denis (21 Sep 2005 - 06:33)