Meilleur balisage HTML5 pour la barre latérale
Je suis dans mon WordPress encadrés pour un thème HTML5 et vraiment vouloir utiliser before_widget
et after_widget
droit.
Donc ma question est: lequel des deux balisage des modèles est le plus approprié? Le code suivant est tout à fait en dehors de la <article>
élément.
Option 1: Côté avec les sections
<aside id="sidebar">
<section id="widget_1"></section>
<section id="widget_2"></section>
<section id="widget_3"></section>
</aside>
Option 2: Div avec des Apartés
<div id="sidebar">
<aside id="widget_1"></aside>
<aside id="widget_1"></aside >
<aside id="widget_1"></aside >
</div>
Je suppose que l'auxiliaire question est alors ce titre à utiliser pour chaque widget titre. Si j'envelopper chaque widget dans une <section>
puis <h1>
semble la plus appropriée. Si j'utilise <aside>
, je ne suis pas sûr.
Toutes les opinions de bienvenue. L'avocat du diable encouragé.
- Remarque: chaque barre latérale doit être un
aside
élément nécessairement (nombre, tout de même). Dépend du contenu spécifique.
Vous devez vous connecter pour publier un commentaire.
Première de tous les CÔTÉ doit être utilisé uniquement pour désigner le contenu lié au contenu principal, et non pas pour un générique de la barre latérale. Deuxième, un côté pour chaque barre latérale seulement
Vous avez un seul côté de chaque barre latérale. Les éléments de la barre latérale sont les divisions ou sections à l'intérieur d'un côté.
Je voudrais aller avec Option 1: Côté avec les sections
Voici les spec https://developer.mozilla.org/en-US/docs/Web/HTML/Element/aside
De nouveau utiliser l'article que si elles ont un en-tête ou pied de page en eux, sinon utilisez un simple div.
nav
?Mise à jour 17/07/27: Que c'est le plus voté réponse, je devrais mise à jour afin d'inclure des informations actuelles localement (avec des liens pour les références).
De la spec [1]:
Grand! Exactement ce que nous recherchons. En outre, il est préférable de vérifier sur
<section>
ainsi.Excellent. Juste ce que nous recherchons. Contrairement à
<article>
[2] qui est pour "autonome" de contenu,<section>
permet liées à du contenu qui n'est pas autonome, ou suffisamment générique pour un<div>
élément.En tant que tel, le spec semble suggérer que l'utilisation de l'Option 1,
<aside>
avec<section>
enfants est la meilleure pratique.Références
<article>
.<aside>
avec<section>
s. Il ne se sent pas tout à fait raison, mais je n'ai toujours pas trouver quelque chose de mieux.aside
est maintenant acceptable pour contenu secondaire lorsqu'il n'est pas imbriquée à l'intérieur d'un article de l'élément." Ceci est en ligne avec le W3C HTML5 et WHATWG HTML spécifications, à la fois explicitement recommandons de l'utiliser à cette fin et d'inclure des exemples de la façon de le faire.Regardez l'exemple suivant, à partir de la Spécification HTML5 sur
côté
.Il est clair que ce qui est actuellement recommandé (octobre 2012), il est de groupe de widgets à l'intérieur
aside
éléments. Ensuite, chaque widget est ce que représente le mieux, unnav
, une série deblockquotes
, etcSur cette base HTML5 Médecin diagramme, je pense que c'est peut être le meilleur balisage:
Je pense qu'il est clair que
<aside>
est l'élément tant que c'est à l'extérieur le principal<article>
élément.Maintenant, je pense que
<article>
est également approprié pour chaque widget dans la de côté. Dans les paroles du W3C:article
serait incorrect.article
ne serait pas correct. Un bon point, c'est de penser à la syndication... en général, vous n'avez pas besoin de syndicat pour les widgets...article
si c'est un article complet. si c'est un aperçu ou de l'exception, il peut êtrearticle
ou peut-être mieux comme undiv
,ol
, ou peut-êtrefigure
.Le livre HTML5 lignes Directrices pour les Développeurs Web: Structure et de la Sémantique pour les Documents suggéré cette façon (option 1):
Il souligne également que vous pouvez utiliser les sections dans le pied de page. Donc, l'article peut être utilisé en dehors de la page de contenu.
Le CÔTÉ a depuis été modifiée pour inclure le contenu secondaire ainsi.
HTML5 Médecin a un excellent article sur le sujet ici:
http://html5doctor.com/aside-revisited/
Extrait: