fastclemmy.com

La fin d'un projet sur lequel je travaille depuis quelques semaines déjà commence à approcher. Voici quelques retours d'expérience "de la vraie vie" que j'aimerais vous faire partager.

Note : penser à éventuellement mettre à jour ce log.

Organisation des fichiers

Visiblement, il n'y a pas encore de règle de l'art en la matière. Pour ma part, pour éviter les feuilles de style à rallonge, j'ai expérimenté une nouvelle fois avec succès que j'appellerais le "toutpareilsaufque".

Mettons d'abord de côté la feuille de style de la page d'accueil qui a souvent des spécificités très différentes du reste du site. Le coeur du système, c'est une feuille de style "commun.css" qui, comme son nom l'indique, regroupe les caractéristiques communes à toutes les pages (typo utilisée, effets sur les liens, disposition générale des grands blocs, etc.). Ensuite pour les pages où des propriétés ponctuelles sont nécessaires, je crée une feuille de style qui @import(commun.css) avant de les déclarer. Quels avantages ? Une séparation claire des fichiers, des feuilles de style individuellement raccourcies, une maintenance facilitée.

Ainsi, pour mettre en place une image illustrative indiquant la rubrique du site dans laquelle on se trouve on procèdera comme suit. On affecte un id du nom de la rubrique à la balise >body<. Dans la feuille de style "commun.css" on déclare les propriétés générales du bloc d'image (position, marges, etc.). Dans une feuille de style "nomDeLaRubrique.css" on précise simplement le nom de l'image en question. Et le tour est joué !

Positionnement : the simpler, the better

Assurément, la tâche la plus compliquée dans la conception par blocs reste le positionnement. Je peux maintenant dire d'expérience que l'on a tout avantage à garder la structure la plus simple possible. D'ailleurs si cette attention est portée dès la conception du design graphique du site, vous vous éviterez quelques désagréments par la suite.

Si le positionnement absolu peut paraître sexy avec son approche au pixel près et son comportement relativement homogène dans les navigateurs, quelques inconvénients font qu'il ne peut s'appliquer à tous les éléments d'un site :

  • il est peu compatible avec une mise en page liquide
  • il ne permet pas d'obtenir des pieds de page "mobiles"
  • il risque de créer des problèmes de chevauchement

De manière générale essayez donc de conserver au maximum le flux normal des éléments (empilement des boîtes) pour ne pas avoir de surprises désagréables avec les différents brouteurs.

Pensez aux nouvelles bonnes méthodes

Le concept des image-maps vous plaisait ? Ca tombe bien, il est encore possible d'en faire, mais avec la (bonne) manière. Pour cela, inspirez-vous de l'article d'ALA sur le sujet, mettez-le à votre sauce. Et le tour est joué ! Dans mon cas, j'ai utilisé une simple liste linéaire avec une image d'arrière-plan et des les éléments étaient des liens dans des >span< que j'ai caché via la propriété display:none.

Pas de tableaux mais...

Hérésie, j'ai utilisé des tableaux pour mettre en forme des formulaires ! Mais finalement, est-ce si impardonnable ?

#xhtmlCSS

Vos commentaires

JMF - site -
Pour les formulaires, je me suis inspiré de cette technique: http://realworldstyle.com/forms.html.

Cela donne un visuel nickel et le code est propre. :)

Gatan - site -
Pour faire des éléments spécifique à certains type de pages j’utilise une autre technique qui me semble aussi interessante.
Pour chaque type de page identifiée comme différente j’attribue au un “ID” spécifique qui est repris dans le fichier CSS.

Par exemple pour une page actualité dont le fond et la couleur de titre sont différents je fais ceci :


L’actualité…


et dans le css :
/* Globales */
body {margin: 0; padding: 0…}
h1 {font-size: 1em; color: blue}
/* Spécifiques */
bodypageActualite {background-image: url(…)}
bodypageActualite h1 {color: red;}
…et ainsi de suite pour toute les modifications spécifiques.
L’interêt de cette technique est qu’elle renseigne des spécificité de chacune des page et de modifier facilement la globalité des documents…

Nicolas Hoizey - site -
« On affecte un id du nom de la rubrique à la balise >body< »

Attention, cela pose problème pour les utilisateurs qui veulent définir leur propre feuille de style en fonction des sites visités, voir à ce sujet l'article suivant : http://tw.o0o.ch/weblog/2004/06/04/58-une-feuille-de-styles-utilisateur-par-domaine

Gatan - site -
Oui dans le cas ou on utilise une extension très spécifique de Firebird…
Mais rien ne m’empêche dans l’absolu de travailler de cette manière, si ce n’est que pour cette extension. À moins que je n’y ai rien compris…
Rien dans la norme ne m’empêche de le faire, mais rien ne m’empêche non plus de fixer des tailles de police en-dessous du seuil de lisibilté normal… Donc, si quelqu’un peut me dire ;).

Gatan - site -
Pour le premier commentaire qui n’est pas passé voici le bout de code HTML :
>body id="pageActualite"< >h1< L’actualité… >/h1< >/body

mat -
Cela ne pose pas de problemes d'utiliser id sur le body, puisque l'extension en question ne touche pas a l'attribut si il existe, et rajoute une classe a la place. Comme il faut d'abord visiter la page et regarder son code avant de la restyler, tu es de toutes facons prevenu :)

Nicolas Hoizey - site -
Effectivement, je pensais plus à ceux qui n'ont pas cette extension ...

mat -
Et quel serait le probleme pour ceux qui n'ont pas cette extension ? ca change strictement rien pour eux :)

Nicolas Hoizey - site -
Si quelqu'un navigue avec sa propre feuille de style, pour des raisons diverses, l'idéal pour lui est de pouvoir définir des propriétés selon les sites visités.

Par exemple, forcer la couleur du texte en noir sur ce site pour avoir un meilleur contraste, mais en blanc sur un autre ...

Pour cela, si le body a toujours un id "fastclemmy" quelle que soit la page, ce sera simple.

Si chaque page donne au body un id différent, ce sera plus pénible.

Non ?

Gatan - site -
Si tel est le cas je leur conseillerais de faire une chose :
body {color: black !important}

Nicolas Hoizey - site -
C'est justement alors la seule possibilité, alors que tous les sites ne s'accomodent pas forcément de cette unique règle.

Evidemment, il y a déjà un problème si la couleur de fond est noir ou sombre.

Mais forcer le fond à blanc ne va pas forcément résoudre le problème non plus.

Non, si cette intéressante extension n'est pas utilisée, un id unique par site sur le body permet vraiment d'ajuster au mieux les différents sites fréquemment visités.

bigboardraiders - site -
Evidemment, il y a déjà un problème si la couleur de fond est noir ou sombre.

best mattress for back - site -
I was very pleased to find this site.I wanted to thank you for this great read!! I definitely enjoying every little bit of it and I have you bookmarked to check out new stuff you post.

butterfly knife amazon - site -
What a good blog you have here. Please update it more often. This topics is my interest. Thank you. . .

Obat Tradisional Kencing Manis - site -
Obat Diabetes Terbaik pada saat ini memberikan jalan keluar paling baik untuk mengobati penyakit diabetes melitus. Solusi yang disarankan adalah dengan Obat Tradisional Diabetes atau lebih dikenal sebutan Jus Kulit Manggis yang mana jelas nyata terpercaya khasiatnya didalam memulihkan penyakit diabetes melitus.

Obat Herbal Kolesterol Tinggi Yang Bagus - site -
Obat Herbal Amazon Plus Penurun Kolesterol Tinggi merupakan salah satu Obat Herbal yang sangat ampuh dalam proses penurunan kadar penyakit kolesterol.

Obat Asma Untuk Anak - site -
Kandungan di dalam Amazon Obat Herbal Asma Alamiah terbuat dari sari kulit manggis, madu murni, & bunga rosela, tanpa bahan kimia karena dalam kulit buah itu memang sudah terdapat pengawet yang alami.

rgwrgw4gh - site -
The process of article marketing consists of writing articles for submission to article directories. The drawback being that all of these sleep article directories require the documents / articles you are submitting to consist of unique content.

QNC Jelly Gamat - site -
get the genuine product of sea cucumber or gold gamat

Pengobatan Diabetes Melitus - site -
Article very interisting, thanks for sharing information

Ajouter votre commentaire