5568 sujets

Sémantique web et HTML

Bonjour, je suis entrain d'essayer html 5 et il y a quelquechose que je trouve étrange ; ma page est comme ca :


<article>
   <div>texte decoré</div>
   <section>
      <div>texte decoré différement que le div d'article</div>
   </section>
</article>


Le problème est que le div section prend la css du div article, en sachant que dans ma feuillle je met :


article {...}
article div {...}
section {...}
section div {...}


Il n'y a pas moyen d'annuler le div article ? ou je fais mal ?

-----------

PS : avec html 5 on a les balise header et footer qui sont très pratique, il aurait été bien d'avoir une balise contenu pour le centre de la page.

------------

Merci Smiley smile
puceverte a écrit :
[...]
PS : avec html 5 on a les balise header et footer qui sont très pratique, il aurait été bien d'avoir une balise contenu pour le centre de la page. [...]

Hello,

Je vois bien ce que tu veux dire, et je suis assez d’accord. J’utilise moi même en HTML4, des ID du nom de “content” pour le DIV enveloppant le contenu principale.

Mais il existe tout de même l’élément
<section>...</section>
qui peut remplir ce rôle (même si ça n’est pas aussi explicite qu’aurait put l’être un “<content>”)

À propos de “<section>” : L’élément HTML5 Section (en).
Modifié par hibou57 (17 Jul 2010 - 14:26)
Hello,

Pour le problème de CSS, ce n'est pas un problème propre à HTML5, tu aurais exactement le même avec des DIV par exemple. Sans savoir exactement ce que tu souhaites faire, difficile de te conseiller. Mais à priori tu appliques des styles à trop d'éléments car tes sélecteurs CSS ne sont pas assez précis.

Réviser les sélecteurs CSS 2.1 (qui devraient suffire Smiley cligne ) si nécessaire.

hibou57 a écrit :
Je vois bien ce que tu veux dire, et je suis assez d’accord.

Pas d'accord pour ma part. Utiliser SECTION pour englober tout le contenu d'un élément SECTION ou ARTICLE à l'exclusion de FOOTER ou HEADER... c'est juste une erreur. C'est rajouter un niveau de structure pour rien du tout.
Si on veut englober le contenu, rien n'interdit d'utiliser un DIV avec une classe.

Les éléments structurant en HTML5 n'ont pas pour but de remplacer DIV. Ils servent à donner des indications sur le contenu et aider à structure le document.
puceverte a écrit :
Il n'y a pas moyen d'annuler le div article ?

Non, mais tu peux rendre ton sélecteur plus précis.
Deux pistes:
1. Rajouter une classe ou un identifiant à ton DIV.
2. Utiliser un sélecteur plus précis, tel que article > div.

Note en passant: il peut très bien y avoir plusieurs éléments ARTICLE dans une page. Donc utiliser un id serait pas mal. Smiley cligne