Publié le lundi, 30 août 2004
Au bureau, nous sommes en train de mettre la touche finale à un site important. J'en suis le directeur artistique et webmestre; j'en ai fait le design et supervisé la construction.
Depuis plus de deux ans, je me suis converti au design Web sans tableaux, uniquement en CSS. Je n'avais jamais eu de problèmes majeurs. En fait, je suis devenu très confortable avec cette technique de travail, que je considère toujours comme supérieure (comme en fait foi mon blogue). C'était donc naturel pour moi de prendre mon XHTML et mon CSS pour construire ce site.
Je savais que mon HTML ne serait pas valide — de grosses portions sont en Flash. Ce n'était pas un problème. Pourtant, pour la première fois, j'ai frappé un noeud (en fait, deux) : les pieds de page et Internet Explorer 5 pour Mac.
J'ai dû me rendre à l'évidence : impossible d'avoir un pied de page au bas de la fenêtre du navigateur avec seulement du CSS. Enfin presque : ça foire « juste » dans les deux navigateurs les plus utilisés sur Mac : Safari et Explorer. Quand on est un utilisateur Mac et que tout le monde dans la boîte où tu travailles l'est, ça va mal.
J'ai été sauvé : A List Apart est venue à mon secours, avec un joli petit article et un grain de Javascript qui positionne le pied de page on the fly, même dans Safari et Explorer/Mac. Ça fonctionne bien, sauf que j'ai dû tâtonner et modifier le script selon les pages. Je sais que la prochaine version de Safari va supporter min-height, essentiel au positionnement du pied de page. Restera Explorer/Mac, qu'on pourra se permettre de mettre de côté bientôt. Il y a de l'espoir...
Lui, il m'a fait beaucoup de peine ! Ironiquement, c'est grâce à lui que toute la vague XHTML/CSS/accessibilité a déferlé sur le Web. Malheureusement, aujourd'hui, il n'est plus ce qu'il était.
Il plante avec du CSS valide, crée plein de marges inexplicables autour des éléments qui ont un float. En fait, je n'en suis pas encore venu à bout ! Mais j'y arriverai, je n'ai pas vraiment le choix : c'est le meilleur navigateur disponible pour les utilisateurs de MacOS 9 (et il y en a encore pas mal). C'est juste que ça rappelle de mauvais souvenirs (Netscape 4.x) et qu'on préférerait s'en passer. Heureusement, c'est un navigateur tout de même en voie de disparition.
Ma mésaventure avec Explorer m'a presque fait regretter les tableaux. On ouvrait Dreamweaver, on importait le tableau exporté de Fireworks pis bingo ! La machine avait tout fait toute seule. Pas besoin d'apprendre des #contenu>#texte {margin:20px;}. Sauf que je ne pouvais pas contrôler mes marges. Ou la taille de mon texte au pixel près. Ou l'espace entre les lignes. Ou la position du fond. Ou un truc très simple et pourtant si efficace : je ne pouvais pas avoir un fond qui reste fixe même si je fais défiler ma page.
Ce qui est dommage avec le CSS, c'est que ça complique la création de page Web. D'un côté, c'est bon pour des designers comme moi, ça confirme notre position. De l'autre, ça met les amateurs qui veulent s'y mettre devant une pente assez escarpée. Comment expliquer à quelqu'un qu'il doit d'abord structurer son contenu et ensuite, dans un autre document, définir l'aspect de sa page ? Pourquoi ne pourrait-il pas tout faire en même temps, dans son document HTML ? Je ne sais pas comment un outil comme Dreamweaver s'en sort pour créer un site valide en XHTML/CSS. Ça sera quelque chose à essayer.
Je me suis aussi rendu compte que beaucoup de gens ne réalisent pas tout de suite les avantages. Il me voient régler un bogue dans Explorer 6, un autre dans Explorer 5 et se disent : pourquoi changer quelque chose qui marche ? Fais des tableaux, pis ça va être correct !
Des fois, ils n'ont pas tout à fait tort. Mais quand je réussis à corriger vingt documents en changeant une seule ligne d'un seul document CSS, je me rends compte que ça valait la peine. Avec des tableaux, ça va être correct; avec du CSS, ça va être parfait.
Placé dans Web
« C'est le temps des élections (partielles) | Accueil | Héros »