Recientemente tuve un debate con un colega que afirmó que una <div>
etiqueta debería usarse sobre una <p>
etiqueta al formatear párrafos.
El caso en contra del uso de <p>
es que produce un espacio irregular entre los navegadores y es probable que se vuelva obsoleto como la <b>
etiqueta.
¿Es esta opinión de la <p>
etiqueta compartida por la comunidad?
<b>
(y<i>
para el caso) están lejos de ser obsoletos. Verifique la especificación HTML5.<strong>
y<em>
siempre debe usarse para enfatizar.<b>
y<i>
están en desuso en ese sentido, pero tienen un uso legítimo, aunque limitado, en HTML5.Respuestas:
div
sysp
son para propósitos completamente diferentes.p
es para párrafos,div
es para divisiones seccionales. Uno es para el formato de texto, el otro es para la estructura de la página. Es semánticamente incorrecto usarlodiv
en lugar dep
.Y la razón por la que
b
se desaconseja su uso es porque es una etiqueta de presentación. No tiene significado semántico. Ambosp
ydiv
tienen sus propios significados semánticos únicos.p
nunca será obsoleto siempre y cuando las personas sigan formateando el texto en párrafos.Su colega no parece estar familiarizado con el principio de separación de contenido y presentación . De lo contrario, sabría por qué
b
se aborrece y que los problemas de presentación como el espaciado de texto deberían definirse en CSS, no en HTML.fuente
p { margin: 1em 0 }
hace que toda esta pregunta sea discutible.<b>
ahora tiene un significado semántico: "El elemento b representa un espacio de texto al que se llama la atención con fines utilitarios sin transmitir ninguna importancia adicional y sin implicación de una voz o estado de ánimo alternativo, como palabras clave en un resumen de documento, nombres de productos en una revisión, palabras procesables en software interactivo basado en texto o un artículo lede ". ( fuente )<p>
y<div>
no están destinados para el mismo propósito, ya que tienen un significado semántico diferente:<p>
es para el párrafo<div>
es "ofrecer un mecanismo genérico para agregar estructura a los documentos", como se indica en la especificación div HTML del W3C<p>
Es posible que no quede obsoleto en el futuro, ya que todavía está presente en XHTML y HTML 5.Ambas etiquetas tienen una representación gráfica diferente. A
<p>
tiene un margen superior e inferior de 1em, mientras que a<div>
no tiene margen alguno. Pero este punto es secundario ya que puede ser anulado por CSS.Además, tenga en cuenta esta diferencia: si bien ambas etiquetas son del tipo "bloque", solo
<div>
pueden contener otros elementos de bloque. Así:<p><p> bla </p></p>
está mal, mientras<div><div> bla </div></div>
esta bienEl punto importante a recordar es que ambas son etiquetas válidas y usadas, pero no con el mismo propósito.
fuente