5568 sujets

Sémantique web et HTML

Salut à tous,

J'apprends depuis peu le XHTML & le CSS. D'après ce que j'ai pu voir sur plusieurs sites, utiliser des tableau pour la mise en page = pas bien, fixer la taille d'un bloc en absolu = pas bien. Je suis tout à fait d'accord par rapport à l'argumentation avancée, et je pense qu'il est effectivement beaucoup plus logique d'utiliser des blocs <div> </div> repositionnés et recadrés via une CSS. Toutefois, il y a quelque chose qui m'embête particulièrement avec cette technique. Bon, faire un site fluide et adaptable à n'importe quelle résolution c'est bien. Toutefois, on oublie trop souvent de dire que lorsqu'on parle par exemple de taille relative, il s'agit de la taille relative à celle du browser. Je prends un bête un exemple, je divise ma page en deux verticalement, l'une prenant 20% de m'espace (par exemple pour un menu), l'autre prend les 80% restant pr n'importe quoi. Les deux blocs gauche/droit sont positionnés en flottant, le bloc de droit ayant par exemple l'attribut float: left;

Bien bien bien. Tout ceci est fort plaisant. Toutefois, faut pas trop rêver non plus, les internautes n'utilisent pas toujours leur navigateur "maximisé" (occupant tout l'écran quoi). Moi même, j'ai souvent l'habitude de réduire la taille de mon browser, lorsque par exemple je veux lire une page web tout en surveillant l'avancement d'un traitement d'un programme, ou pour X ou Y raison. Faites donc l'expérience avec mon petit exemple ci-dessus: menu à gauche et un contenu quelconque à droite. Réduisez maintenant progressivement la largeur du browser. La mise en page se dégrade au fur et à mesure. Par exemple, la taille du menu se réduit de plus en plus, jusqu'à ce que la largeur de la liste utilisée ne soit plus suffisante que pour contenir son contenu sur une seule ligne: on a alors droit a un menu de plus en plus "dégeu" si je puis me permettre cette expression. Arrivé à un certain point, la largeur du browser n'est plus suffisante pour afficher les deux blocs côte à côté, le droit "glisse" alors en bas du gauche: la mise en page du site est totalement foutue.

Ce problème n'apparait pas si on fait usage des tableaux et des tailles fixes: la mise en page est conservée quelque soit la taille du browser. C'est un problème particulièrement basique, mais que je n'ai pourtant jamais vu soulevé chez les promotteurs du CSS. Y aurait-il donc un moyen pour "bloquer" la réduction progressive des tailles des blocs, de telles sortes que la mise en page soit toujours impeccable (sans devoir passer à un autre mode de positionnement/dimensionnement rendant le site totalement non fluide?)
Modifié par twkjp (10 Sep 2005 - 00:36)
Bonjour,

Deux choses, sur un débat assez rebattu (faire une recherche dans ce forum dans la section accessibilité) :

- l'utilisation de CSS doit se faire en se souvenant que les défauts d'implémentation (principalement dans IE, mais pas seulement) obligent à de nombreux contournements. Dans le cas cité ci-dessus, le non support de min-width...

- les mises en pages en colonnes fluides sont pertinentes dans une fouchette moyenne de largeur d'affichage, où un design bien fait ne se dégradera pas. Au-delà de cette fourchette, il y a des dégradation admissibles n'entravant pas l'accès au site. Et encore au-delà, en très petite largeur, il est évident qu'il ne s'agit plus d'un affichage screen "normal", et que l'adaptation est du ressort d'une CSS spécifique (handheld, tv, CSS alternative), du moteur de rendu (Adaptation "fit to width" d'Opera), ou de nouveaux outils (Media Queries, CC/PP, etc.).
Modifié par Laurent Denis (10 Sep 2005 - 05:51)
bonjour,

Allez quelques autres petites choses pour la route :

- Ce débat récurent quand on aborde les unités relatives est un faux problème.
Un site en valeur absolue, graphiquement évolué, affiché sur un fenêtrage trop réduit par l'utilisateur sera tout aussi illisible qu'une mise en page fluide dégradée.
Le but de l'utilisation des unités relatives dans la mise en page n'est absolument pas de garantir un affichage "identique" ou "utilisable" en toutes conditions.

- La dégradation d'une mise en page fluide par le fenêtrage est le résultat d'un choix de l'utilisateur, le but est alors simplement d'offrir le maximum de souplesse de manipulation, dans une fourchette raisonnable, comme le souligne Laurent.

- L'adaptation aux possibilités matérielles de l'agent utilisateur est encore un domaine préhistorique. Coté CSS les types de médias et les feuilles de styles alternatives sont un début de réponse mais très insatisfaisantes, eut égard aux défaut d'implémentation des navigateurs, notamment de IE.

- On attends beaucoup, également, des tentatives en cours d'offrir des possibilités logicielles d'adaptation des mises en pages par l'agent utilisateur lui-même.
C'est un point important, car ces problèmes d'affichage, de redimensionnement, de spécificités matérielles et de conditions d'utilisations ne sont pas vraiment du ressort du concepteur.
Son job se limite à offrir aux possibilités logicielles et matérielles de l'agent utilisateur des contenus dont la structure est facilement manipulable et des alternatives dédiées, chaque fois que c'est possible.

Jean-pierre