A <p> o non a <p>?


16

Di recente ho avuto un dibattito con un collega che ha affermato che un <div>tag deve essere utilizzato su un <p>tag durante la formattazione dei paragrafi.

Il caso contro l'uso di <p>è che produce una spaziatura irregolare tra i browser ed è probabile che diventi obsoleto come il <b>tag.

Questa opinione sul <p>tag è condivisa dalla community?


5
Solo per sottolineare, <b>(e del <i>resto) sono tutt'altro che obsoleti. Controlla le specifiche HTML5.
DisgruntledGoat

Un buon punto: ho appena verificato, mi è sempre stato detto che <b> e <i> sono tag ammortizzati e <strong> e <em> devono essere usati.
BradB,

<strong>e <em>dovrebbe sempre essere usato per enfasi. <b>e <i>sono deprecati a tale riguardo, ma hanno un uso legittimo, sebbene limitato, in HTML5.
DisgruntledGoat

Questa discussione appartiene davvero qui? Mi sembra che questo dovrebbe essere su Doctype
Charles Boyung,

@Charles - al momento è un'area grigia, poiché il sito è ancora agli inizi. Se ti senti fortemente, sentiti libero di iniziare una nuova discussione su meta.webmasters.stackexchange.com - o pubblica qui i tuoi commenti: meta.webmasters.stackexchange.com/questions/117/…
Mark Henderson

Risposte:


41

divse psono per scopi completamente diversi. pè per i paragrafi, divè per le divisioni sezionali. Uno è per la formattazione del testo, l'altro è per la struttura della pagina. È semanticamente errato da usare dival posto di p.

E il motivo per cui l'uso bè sconsigliato è perché è un tag di presentazione. Non ha significato semantico. Entrambi pe divhanno i loro significati semantici unici. pnon sarà mai obsoleto fintanto che le persone formatteranno il testo in paragrafi.

Il tuo collega non sembra avere familiarità con il principio di separazione dei contenuti e della presentazione . Altrimenti, saprebbe perché bè aborrito e che i problemi di presentazione come la spaziatura del testo dovrebbero essere definiti nel CSS, non nel tuo HTML.


11
+1 Accetto. Solo per enfatizzare ... ogni "spaziatura irregolare tra i browser" (sebbene sia discutibile) può essere controllata interamente da CSS.
MrWhite,

4
Sì ... p { margin: 1em 0 }rende l'intera questione discutibile.
DisgruntledGoat

7
<b>ora ha un significato semantico: "L'elemento b rappresenta un arco di testo verso il quale viene attirata l'attenzione a scopi utilitaristici senza trasmettere alcuna importanza in più e senza implicazioni di una voce o un umore alternativi, come le parole chiave in un documento astratto, nomi di prodotti in una recensione, parole utilizzabili in software interattivo basato su testo o articolo lede ". ( fonte )
David Murdoch,

13

<p>e <div>non sono pensati per lo stesso scopo, poiché hanno un significato semantico diverso:

  • <p> è per il paragrafo,
  • <div>è "offrire un meccanismo generico per aggiungere struttura ai documenti", come indicato nelle specifiche HTML div del W3C

<p> potrebbe non essere deprecato in futuro poiché è ancora presente in XHTML e HTML 5.

Entrambi i tag hanno un diverso rendering grafico. A <p>ha un margine superiore e inferiore di 1em, mentre a <div>non ha alcun margine. Ma questo punto è secondario in quanto potrebbe essere ignorato dai CSS.

Inoltre, nota questa differenza: mentre entrambi i tag sono di tipo "blocco", <div>possono contenere solo altri elementi di blocco. Così:

  • <p><p> bla </p></p> è sbagliato, mentre
  • <div><div> bla </div></div> va bene

Il punto importante da ricordare è che entrambi sono tag validi e usati, ma non per lo stesso scopo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.