a qu'elles normes precise dois je faire reference ?
Il faut d'abord penser au contenu, les technologies employées et les normes associées en découleront.
CSS 1 ou 2 ?
Peut importe en fait, du moins au niveau résultat. On ne précise pas dans le codage des css le niveau utilisé.
En fait la logique que j'en comprend, c'est que si le navigateur ne comprend par exemple que CSS 1, il n'interprétera pas les éventuelles règles CSS 2 indiquées. Il faut donc juste faire attention à ce que le résultat se dégrade correctement, jusqu'au niveau ou aucunes CSS ne sont interprétées. Tu peux donc même utiliser les règles CSS 3 déjà normalisées.
Je rajoute que personnellement, et comme certains, j'aurai préféré que l'on indique le niveau des css dans le code, mais bon... c'est pas le cas.
xhtml ou html ?
J'aimerai te dire sans hésité xhtml, mais...
A l'heure actuelle 80% des utilisateurs ont un navigateur (IE) qui ne sait pas interpréter du xhtml, mais qui l'interprète comme "a peu près" du html (il passe même en mode quirk je pense).
Cependant il faut avoir en tête que xhtml n'est rien d'autre que html réécrit en xml. Et que pour enormément de site internet, celà n'apporte pas d'avantages.
Ces avantages sont des interactions possibles avec d'autres fichiers xml (inclusion de svg, de mathml, de données autres..., tranformations...).
Donc a moins d'avoir des raisons valables, je dirait de faire du html. Sinon si c'est vraiment justifié de faire du xhtml, il faut prévoir dans les cas les plus simples de servir un type mime html (résultat-> soupe html), dans les cas plus subtiles de prévoir sur le serveur une tranformation en html.
Je rajoute que sur html, des manipulations peuvent quand même être réalisées en manipulant le DOM via javascript, pour inclure des données xml par exemple.
strict ou transitionnal ?
Strict sauf si tu as besoin de balises disparues des doctypes stricts (iframe, attribut target,...)
Il est possible de simuler via javascript les target="_blank" sur du html strict, mais c'est détourner la logique du strict, si on tient à ce procédé autant faire du transitional.
Les iframe sont souvent facilement remplaçables par des objects, mais IE ne permet pas beaucoup de manipulations de ces derniers...
Il est aussi possible en théorie d'utiliser des doctypes personnalisés.
quelle norme pour l'accessibilite ?
des liens :
http://www.w3.org/WAI/
http://www.w3.org/2003/03/Translations/ ... ng.html#fr paragraphe Accessibilité du Web
http://openweb.eu.org/ressources/specifications/ paragraphe Accessibilité
http://www.opquast.com/
que rajouter d'autre comme exigences ?
- séparer la présentation (les css) du contenu (html ou xhtml) (c'est bien sûr la logique du html strict, mais c'est applicable au transitional).
- De même séparer les comportements (le javascript, dont tu ne parle pas). Le séparer, c'est à dire pas d'attribut onclick dans le html par exemple.
Le javascript est un apport important de confort, ne pas hésiter à s'en servir, MAIS il doit être accessible, c'est dire que tout doit fonctionner sans.
- séparer les traitements serveur (php par exemple) des html générés. Tu ne parles pas des langages côtés serveur, ils sont souvent incontournables.
code commenté ?
Ben franchement, çà va de soit si tu veux que tes codes soient facilement maintenables, non ? Ceci dit, souvent, je suis partisan pour que les commentaires soit succints, mais pertinents. Le code lui même doit être directement lisibles (des noms de variables, classe, identificateurs, pertinents)