<C²: webløg />

Courriel - email address

Avatar Denis

mardi 29 avril 2003
par Denis Boudreau

Réflexions sur les CSS, part II

À en juger par les nombreuses réactions suscitées par ma petite réflexion d'hier sur l'utilisation des sélecteurs CSS multiples sous un même élément (x)HTML, force m'est de reconnaître que j'étais loin d'être le seul à ignorer ce truc tout à fait conforme aux normes. Cependant, malgré l'apparente merveille de la chose, je me sens obligé de revenir sur le sujet, question de nuancer un peu mes propos et éviter de me retrouver au centre d'une controverse quant à un certain mauvais usage potentiel de la technique. Je m'explique :

Nous sommes tous d'accord pour dire que les utilisations de balises (x)HTML à vocation strictement présentationnelles sont à éviter. Une telle approche constitue le fondement même des feuilles de style. Nous sommes également d'accords pour laisser tomber tous les <b>, <i>, <font> ou encore <u> de ce monde, au profit d'un habillage purement CSS ou de balises (x)HTML à valeur sémantique comme <strong> ou encore <em>, beaucoup plus élégantes, pratiques et surtout sémantiquement correctes. Cependant, selon le principe du balancier, il faut éviter de passer d'un extrème à un autre; il faut tendre comme les bouddhistes à la Voie du Milieu, à l'équilibre entre le (x)HTML et le CSS, ou la structure et la présentation...

Si nous sommes toujours d'accords pour remplacer les balises <b> à signification purement visuelle par autre chose (soit une règle CSS ou un autre élément (x)HTML plus adéquat), nul d'entre nous ne voudrait remplacer l'ensemble de ses <b> par autant de <span style: font-weight: bold;"> dans le seul bur de faire CSS... et se retrouver avec un fichier (x)HTML truffé d'éléments de présentation aussi encombrants que ces balises (x)HTML de présentation dont nous espérons tant nous débarasser. Avec 12 fois plus de caractères pour les représenter chacunes, sans compter le bordel de les écrire, une telle pratique aurait tôt fait de noyer le poisson. À la rigueur, il en va de même pour la tendance à remplacer le fameux <b> par un viril <span class="bold">, qui aurait été préalablement codé dans ue feuille de style avec la règle .bold {font-weight: bold;} — ainsi faire ne ferait que déplacer le problème de séparation des structures de contenus de leur présentation cosmétique, en plus d'allourdir considérablement les fichiers (x)HTML, ce qui irait totalement à l'encontre des avantages induits par les feuilles de style.

Il faut donc relativiser tout ça et tenter d'y voir plus clair. Comment ? En prenant un exemple simple.

Supposons que vous partiez en peur avec la technique des sélecteurs multiples et que vous cumuliez sous un même <span class="sélecteur1 sélecteur2 sélecteur3"> une demi douzaine de sélecteurs différents dans le but louangable de réaliser une économie de duplication dans votre CSS, vous allez rapidement vous trouver avec un nouveau problème sur les bras. Certes, vos CSS externes seront légères et bien structurées, mais votre code (x)HTML lui, sera pollué comme pas un de multiples sélecteurs qui perdront peut-être toute leur raison d'être lorsque le temps sera venu de traiter votre document (x)HTML avec une nouvelle feuille de style. Qu'arrivera t-il de toutes ces multiples classes pour créer à la fois un texte grisé, une bordure en pointillé et une marge à droite autour d'un paragraphe, lorsque dans la prochaine feuille de style, vous souhaiterez avoir un paragraphe avec un affichage tout ce qu'il y a de plus conventionnel ? Il vous faudra soit laisser tous ces sélecteurs à l'abandon dans vos documents, ou les éliminer manuellement afin de garder vos documents le plus à jour possible, ce qui, encore une fois, aura tôt fait de réduire à néant l'avantage des CSS.

La morale donc : utiliser cette technique intelligemment et avec modération. Je remercie au passage Anubis pour les commentaires constructifs, le son de cloche et la discussion captivante à ce sujet.

Denis Boudreau | 2003.04.29 @ 22:14

Alors, qu'en pensez-vous ?

Voici ce que vous aviez à en dire... vos impressions, recueillies à vif.

Ce carnet n'a pas encore été commenté. Avez-vous envie de briser la glace ?

Les commentaires et trackbacks sont désormais fermés. Pour toute remarque, vous pouvez toujours nous contacter.

Pisteur (Trackback)