Qu'est la balise paragraphe la plus correcte sémantiquement : balise p ou div.

WRInaute occasionnel
Bonjour à toute la communauté !

Qu'est la balise paragraphe la plus correcte sémantiquement : balise p ou div...?

Tout est dans le titre du post : pour structurer sa page html, qu'est-ce qui est le plus correct : <p> ou div ?

Quelle est la différence sémantique ?

Merci à toutes et à tous !
H.
 
WRInaute occasionnel
Je lis sur un site spécialisé :
DIV = Balise sans valeur sémantique réelle, elle sert surtout de conteneur pour une mise en forme en CSS. Cette balise doit utilisée en dernier recours, lorsqu'aucune autre balise ne peut convenir.

Or, mes prestataires me disent que c'est parfait pour mon site web, que de le voir structuré avec ces m*****... Quel est votre avis ?

H.
 
WRInaute accro
Tant <div> que <p> sont des éléments de regroupement, et n'ont ainsi aucune valeur sémantique. En html 4 comme en 5.
9a répond formellement à ta question

Après, savori laquelle est la plus adéquate à utiliser dépendra du contexte.
 
WRInaute occasionnel
Merci pour ta réponse explicite.

Très bien : si je comprends bien je me suis donc un peu emballer contre la balise div. Aucune des deux n'est meilleure pour le référencement de son site ? Aucune des deux ne structure mieux le contenu que l'autre ?
 
WRInaute accro
si je peux me permettre, il faut aussi savoir prendre un peu de recul. tu veux faire un paragraphe, soit, c'est quoi la balise <p>, quoi elle sert ?

petite métaphore, je suis en cuisine, je veux faire une tarte aux fraises, j'utilise des fraises ou des pommes ?
 
WRInaute impliqué
Pour écrire un paragraphe, "p" semble la meilleur solution. D'ailleurs, sur cette page de W3C, section 9.3, il est écrit :
The HTML markup for defining a paragraph is straightforward: the P element defines a paragraph.
C'est assez explicite.

De plus, contrairement à l'élément "div", l'élément "p" ne peut pas contenir d'élément de type bloc. Insérer une liste dans un élément "p" est par exemple interdit.

Les éléments "div" et "span" sont utilisés afin de grouper d'autres éléments.
Par exemple, pour faire une lecture sur deux colonnes, tu placerais tes éléments "p" dans deux élément "div". Tu appliquerai un style sur les "div" pour les former en colonne.

Autres liens :
- avec HTML5, l'élément "p" est aussi un paragraphe.
- élément DIV en HTML5
Ces pages sont plus claires comme doc.
 
WRInaute accro
exact, merçi Blount. <p> n'est pas une balise de groupage d'élément. Au temps pour moi...

Cela ne change cependant pas le sens de la réponse à faire à Hyperthal
 
WRInaute discret
euh... je sais pas... mais moi le sujet me fait rire ^^"
Pour moi un paragraphe est bien sur <p> et rien d'autre, le div réprésentant une "partie" de la page...
genre
Code:
<Doctype html>
<html>
   <head>
      <title>titre</title>
   <body>
      <div id='bloc_page'>
         <div id='header'>
         </div>
         <div id='menu'>
         </div>
         <div id='contenu'>
            <p>
               texte :p
            </p>
         </div>
         <div id='footer'>
         </div>
      </div>
   </body>
</html>

Enfin... c'est comme ça que je voit les choses :) Meme si j'utilise les balises sémantiques html5 désormais ;)
 
Olivier Duffez (admin)
Membre du personnel
c'est vrai que sur ce coup la réponse est assez simple : p c'est justement pour les paragraphes et div n'a pas de signification sémantique

merci à Blount pour les explications détaillées et la citation des sources
 
Discussions similaires
Haut