Siempre me tropiezo con esta (pregunta bastante simple) cuando hago, por ejemplo, blogs de Wordpress. ¿Debería envolver el título, que también debería ser un enlace, en un <a>
elemento de anclaje , o debería ser al revés? ¿Y por qué?
(1) :
<a href="foo">
<h1>bar</h1>
</a>
(2) :
<h1>
<a href="foo">bar</a>
</h1>
Siempre termino haciendo (1) , ya que me parece más lógico, que el título esté envuelto en un enlace.
¿Hace alguna diferencia, por ejemplo, en SEO? ¿Reflejará el ranking SEO?
Respuestas:
Antes de HTML5:
el ancla tiene que estar dentro del encabezado, no puede colocar un elemento de nivel de bloque dentro de un ancla, y la mayoría de los navegadores no lo renderizarán 100% confiable si lo hace.
En HTML5:
No importa, use el que tenga más sentido semántico . Probablemente el primero.
Recuerde que si su documento usa DTD de HTML4, no se validará y es posible que no se procese correctamente porque usa las reglas antiguas donde un ancla no puede contener un elemento a nivel de bloque. Utilice solo la primera opción en HTML5. XHTML es equivalente a HTML4, aunque no estoy 100% seguro acerca de XHTML1.1 (pruébalo y comprueba si se valida).
fuente
Si está utilizando un DTD HTML 4.01 (no estoy seguro acerca de la transición, pero definitivamente la estricta), entonces el elemento de ancla debe aparecer dentro del elemento de encabezado. Verifique su tipo de documento si no sabe qué DTD está usando (suponiendo que tenga uno, que necesita para que su código se considere válido). El tipo de documento HTML5 se ve así:
<!DOCTYPE HTML>
El tipo de documento 4.01 es:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
También sugiero que se familiarice con el DTD en sí mismo si va a trabajar con 4.01, responderá todos estos tipos de preguntas.
fuente
El primero es mejor para el SEO porque Google indexa con mucha facilidad.
fuente