Semântica HTML5 - H1 ou H2 para títulos de ARTIGO em uma SEÇÃO

10

Entendo (com base neste capítulo do Dive into HTML5: http://goo.gl/9zliD ) que pode ser considerado semanticamente apropriado usar as tags H1 em várias áreas da página, como um método para definir o título mais importante para esse conteúdo específico.

Se eu estiver usando essa metodologia e tiver uma SEÇÃO à qual designei um H1 de 'Artigos', devo usar H1 ou H2 para definir os títulos dos ARTIGOS nessa SEÇÃO? Isso é um pouco confuso para mim, pois os títulos dos artigos são o cabeçalho mais importante para o ARTIGO, mas também são 'filhos' do título da SEÇÃO.

Código de exemplo:

<section class="article-list">
  <header>
    <h1>Articles</h1>
  </header>

  <article>
    <header>
      <h2>Article Title</h2>
      <time datetime="201-02-01">Today</time>
    </header>
    <p>Article text...</p>
  </article>

  <article>
    <header>
      <h2>Article Title</h2>
      <time datetime="2011-01-31">Yesterday</time>
    </header>
    <p>Article text...</p>
  </article>

  <article>
    <header>
      <h2>Article Title</h2>
      <time datetime="2011-01-30">The Day Before Yesterday</time>
    </header>
    <p>Article text...</p>
  </article>
</section>
Matt
fonte
Ouvi críticas mistas do Dive into ... series. Pelo que entendi, pode não ser a melhor referência.
the_e
4
@espais: Onde você ouviu essas críticas? Você tem um link para um deles negativos?
Lèse majesté
@ Lèse: Eu não posso colocar isso em nada mais do que aqui até agora. Tenho certeza de que vi em um dos sites da SE no passado ... mas agora não tenho fontes.
the_e
11
@espais bizarro, já que todas as referências que posso encontrar nos Webmasters e no SO não são apenas positivas, mas geralmente são altamente votadas. stackoverflow.com/search?q=%22dive+into+html5%22 , webmasters.stackexchange.com/search?q=%22dive+into+html5%22
Yahel
@ Lese: sim, desde que eu realmente não pode fazer backup de meu comentário então eu vou respeitosamente retirá-la
the_e

Respostas:

7

O peregrino não está sozinho em afirmar isso.

De acordo com o HTML5 para Web Designers de Jeremy Keith , você pode usar vários <h1>s em um documento sem estragar o resumo do documento, desde que estejam aninhados em tags seccionais semânticas discretas.

Citando diretamente do eBook (que comprei no iBooks)

Até agora, o novo conteúdo de seção não está nos dando muito mais do que poderíamos fazer com as versões anteriores do HTML. Eis o exemplo: no HTML5, cada parte do conteúdo de seção tem seu próprio esboço independente. Isso significa que você não precisa acompanhar o nível do cabeçalho que deve usar - basta começar a partir de h1 a cada vez:

<h1>An Event Apart</h1> 
    <section>
        <header>
            <h1>Cities</h1>
        </header>
         <p>Join us in these cities in 2010.</p> 
        <section>
            <header>
                <h1>Seattle</h1>
            </header>
            <p>Follow the yellow brick road.</p> 
       </section>
        <section>
            <header>
                <h1>Boston</h1>
            </header>
            <p>That’s Beantown to its friends.</p> 
        </section> 
        <section>
             <header>
                   <h1>Minneapolis</h1>
             </header>
             <p>It's so <em>nice</em>.</p> 
         </section>
     </section> 
     <small>Accommodation not provided.</small>

(Exemplo de código também do livro, página 73)

Yahel
fonte
@ Matt não tem problema. Isso não quer dizer que pode não haver problemas ao fazer isso. Dois vêm à mente. Primeiro, isso pode ser um pouco estranho para CSS, mas é gerenciável. Mas o mais importante é que isso pode ser perigoso para o SEO, pois existe uma sabedoria convencional bastante bem estabelecida de que um deve ter apenas um <h1>em sua página e que qualquer outra coisa dilui a capacidade dos rastreadores de decifrar seu site. Mas eu não sou um guru do SEO, então não posso comentar sobre isso.
Yahel
2

Eu tenderia a concordar com a interpretação de Mark Pilgrim . Se você estiver colocando seu artigo dentro de um articleelemento, poderá começar novamente com um h1cabeçalho para o artigo.

Nas especificações do HTML5, articles devem ser tratados como uma parte independente e independente da página. Você deve conseguir transplantar o articleelemento como está em outra página sem reformatar os cabeçalhos.

Se os cabeçalhos dos artigos precisassem ser uma continuação da hierarquia de cabeçalhos do documento, quando você soltar o articleitem diretamente sob uma bodytag, seria necessário acessá-lo h1, mas se o soltasse nas seções aninhadas, seria necessário alterá-lo para h3/ h4/ h5/ etc., dependendo de onde você o coloca.

De fato, sempre que você criar um novo sectionou article, você deve voltar para h1, pois o seguinte é idêntico:

<article>
  <h1>Meta Data</h1>
    <h2>Data Warehousing</h2>
    <h2>On the Web</h2>
      <h3>Dublin Core</h3>
      <h3>XFN</h3>
      <h3>Microformats</h3>
      <h3>RDFa</h3>
</article>

e:

<article>
  <h1>Meta Data</h1>
  <section>
    <h1>Data Warehousing</h1>
  </section>
  <section>
    <h1>On the Web</h1>
    <section>
      <h1>Dublin Core</h1>
    </section>
    <section>
      <h1>XFN</h1>
    </section>
    <section>
      <h1>Microformats</h1>
    </section>
    <section>
      <h1>RDFa</h1>
    </section>
  </section>
</article>

Como uma observação lateral, se o cabeçalho for apenas um elemento do cabeçalho (por exemplo h1) e nada mais, não será necessário agrupá-lo em um headerelemento.

Lèse majesté
fonte
Obrigado Lèse. Você poderia fornecer uma referência para sua observação sobre o uso apropriado do elemento 'header'? Estou interessado em ler mais sobre isso.
Matt
@ Matt: Basicamente, estou baseando isso na redação da especificação HTML5, que chama header"um grupo de auxílios introdutórios ou de navegação". Isso e o fato de as especificações h1- h6não exigirem que sejam aninhadas em um header(e incluem muitos exemplos deles usados ​​diretamente na seção da qual fazem parte) me sugerem que é desnecessário. Esse sentimento é ecoado por Oli Studholme e Remy Sharp, do HTML5 Doctor.
Lèse majesté
0

Embora os títulos dos artigos da sua página sejam importantes, geralmente o cabeçalho de nível superior da página define o conteúdo da página. Às vezes, é o nome do artigo e, às vezes, como você mostra, é o título de uma lista de artigos.

<h1>My Very Interesting Articles</h1>

Este cabeçalho define a página inteira como 'artigos interessantes'. Cada artigo é listado, mas tem um nível de cabeçalho menor.

Richard Testani
fonte
-1

A resposta oficial da w3schools ao uso de tags de cabeçalho em uma página é a seguinte: Os títulos H1 devem ser usados ​​como títulos principais, seguidos pelos títulos H2, depois pelos menos importantes H3 e assim por diante.

Keith Groben
fonte
5
Na verdade, não há nada "oficial" no W3Schools. É um nome enganador, pois eles não são afiliados ou endossados ​​pelo W3C de forma alguma.
Lèse majesté
de fato, consulte w3fools.com para uma descrição detalhada de quão terrível é o W3Schools.
Yahel 02/02
Eu pensei que este site de perguntas e respostas teria alguns usuários mais construtivos. Vocês parecem um pouco arrogantes.
Keith Groben
2
Não tem nada a ver com arrogância, e nada a ver com o desejo de ser mau, e tudo a ver com o desejo de ver desinformação como essa anulada. Muitas pessoas pensam que o w3schools é uma fonte autorizada e precisa, e é extremamente prejudicial para a qualidade do desenvolvimento da web. O objetivo dos sites de stackexchange é fornecer respostas precisas e de qualidade, além de pressionar e corrigir respostas imprecisas, incorretas ou enganosas.
Yahel
11
Na verdade, sua resposta ignorou completamente minha pergunta e respondeu a uma pergunta que não foi feita. Minha pergunta afirmou claramente 'Se estou usando essa metodologia ...' Essa parte estava em negrito para garantir que a pergunta fosse clara. Eu diria que esse é o motivo mais provável pela qual sua resposta foi rejeitada.
Matt