Gardel a écrit :
J'ai remarqué que sur la plupart des sites web (respectants les standards), il n'y a que des <p> et aucun <br /> dans les articles ou billets de blog tandis qu'il n'y a pas de <p>, ou un seul englobant tout un texte, avec des <br /> pour les commentaires de blogs, les forums et toutes formes de contenu créé par plusieurs utilisateurs. Pourquoi ces logiques très différentes sur un même site web, voir sur la même page ?
Ce sont des logiques techniques essentiellement.
Dans les deux cas, on a au départ une saisie de texte par l'utilisateur. La solution la plus simple pour en faire un texte lisible, c'est de générer des <br> pour chaque retour à la ligne fait par l'utilisateur. L'utilisateur décide alors s'il veut sauter des lignes pour aérer son texte, par exemple. L'autre solution, c'est d'analyser le texte saisi pour repérer un schéma particulier, afin de générer des éléments
p dans certains cas (le plus souvent: s'il y a un double retour à la ligne entre chaque bloc de texte).
Laissons de côté la question sémantique: franchement, ça n'a pas un grand impact sur qui que ce soit qu'un texte d'une dizaine de paragraphes soit codé avec deux éléments
p ou bien avec une seule
div et des doubles
br entre chaque «paragraphe». C'est plutôt pour la mise en page que la première solution est intéressante:
- chaque paragraphe est identifié comme un élément à part entière;
- on peut obtenir un rendu de type «roman» (pas de marges aux paragraphes,
text-indent positif) ou de type «web» (pas de
text-indent, marges entre les paragraphes), ou encore autre chose. De plus, le double <br> condamne à avoir un espacement entre les paragraphes équivalent à une ligne de texte. Avec des éléments
p, on peut avoir des espacements plus réduits par exemple. Exemple de code:
div#content p {margin: .5em 0;}