5568 sujets

Sémantique web et HTML

Hello,

Je viens de voir ce lien sur Twitter d'un membre du W3C qui propose de supprimer l'élement hgroup pour le remplacer par subhead.

http://www.w3.org/Bugs/Public/show_bug.cgi?id=11731


Bon, vu que la plupart des navigateurs supportent déjà hgroup je me dis que c'est peut-être un peu tard pour faire ce genre de propositions et que ça ne va pas passer.

Mais ça m'a rappelé au passage que je ne comprends rien à hgroup, quel est l'intérêt de faire des groupes de hn ?
Quelqu'un pourraît m'expliquer ? Smiley langue

Merci.
Skoua a écrit :
Mais ça m'a rappelé au passage que je ne comprends rien à hgroup, quel est l'intérêt de faire des groupes de hn ?

Tu écris:
<hgroup>
  <h1>Un titre</h1>
  <h2>Le sous-titre qui va avec</h2>
</hgroup>
<h2>Un titre intermédiaire</h2>

Et le plan du document retient:
Un titre
    Un titre intermédiaire

Et non pas:
Un titre
    Le sous-titre qui va avec
    Un titre intermédiaire

Ça permet donc d'associer un sous-titre (ou autre information indissociable) à un titre, sans casser le plan du document.

Pour le bug en question, je doute que ça passe.
Modifié par Florent V. (11 Jan 2011 - 20:11)
<hgroup> n'a pas vraiment d'interêt il est en doublon de <header> c'est pour ça qu'il ne devrait pas rester. en gros ca fonctionne comme ça :

<article>
  <header>
    <hgroup>
      <h1>Titre 1</h1>
      <h2>Titre 2</h2>
    </hgroup>
    <p>Sous-titre, date, auteur etc....</p>
  </header>

  <p>Contenu de l'article</p>

</article>

hgroup ne peut contenir que des h1->h6

C'est donc essentiellement pour les mini applications (iphone etc) qui privilégierons les éléments hgroup du header au reste.
Merci pour vos réponses j'ai bien compris du coup.

Mais je trouve ça un peu lourd et verbeux de devoir sortir une balise pour si peu, surtout qu'en effet ça a l'air de faire doublon avec header.

Je m'en servirai malgré tout dorénavant, en attendant de voir si l'idée pas si bête du mec qui a écrit le bug passe, ça peut toujours arriver.
joska a écrit :
<hgroup> n'a pas vraiment d'interêt il est en doublon de <header>

Pas vraiment. HGROUP a un but précis (masquer les sous-titres dans le plan du document). L'algorithme de calcul du plan du document pourrait être modifié pour que seul le premier titre dans un HEADER soit pris en compte, mais ça limiterait les usages possibles de HEADER.

Skoua a écrit :
Mais je trouve ça un peu lourd et verbeux de devoir sortir une balise pour si peu

En HTML4 je fais ça pour un titre+sous-titre:
<h1>
  <strong>Titre</strong>
  <span>Sous-titre</span>
</h1>

En HTML5 ça devient:
<hgroup>
  <h1>Titre</h1>
  <h2>Sous-titre</h2>
</hgroup>

Pas plus verbeux pour moi. Smiley smile
Modifié par Florent V. (12 Jan 2011 - 15:25)
Dans cette discussion, il y a ce balisage qui est proposé:
<h1>
  Titre
  <small>Sous-titre</small>
</h1>

C'est plutôt cohérent avec la sémantique de SMALL en HTML5. Une bonne solution de repli si jamais HGROUP est supprimé.

Mais le consensus actuel penche en faveur du maintien de HGROUP, qui est explicite et remplit une fonction précise.
Modifié par Florent V. (19 Jan 2011 - 19:25)