Vous trouverez de nombreux didacticiels sur les barres de menus en HTML, mais pour ce cas spécifique (bien que générique à IMHO), je n'ai trouvé aucune solution décente:
# THE MENU ITEMS SHOULD BE JUSTIFIED JUST AS PLAIN TEXT WOULD BE #
# ^ ^ #
- Il existe un nombre variable d'éléments de menu contenant uniquement du texte et la mise en page est fluide.
- Le premier élément de menu doit être aligné à gauche, le dernier élément de menu doit être aligné à droite.
- Les éléments restants doivent être répartis de manière optimale dans la barre de menus.
- Le nombre varie, il n'y a donc aucune chance de pré-calculer les largeurs optimales.
Notez qu'un TABLE ne fonctionnera pas non plus ici:
- Si vous centrez tous les TD, le premier et le dernier élément ne sont pas alignés correctement.
- Si vous alignez à gauche et à droite le premier resp. les derniers éléments, l'espacement sera sous-optimal.
N'est-il pas étrange qu'il n'y ait pas de moyen évident de mettre en œuvre cela de manière propre en utilisant HTML et CSS?
spanau lieu d'unhr! Cela ne fonctionne pas vraiment, le HR occupe un espace visible - utilisez#menu { border: solid 1px green; }pour confirmer. De plus,display: inline-block;ne fonctionne pas sur IE (... 7? CompatibilityView?) Pour les éléments qui ne sont pas naturellement des éléments en ligne. HR est un élément de bloc, donc je suppose que le bloc en ligne ne fonctionne pas pour HR sur IE. Quoi qu'il en soit, span.