28173 sujets

CSS et mise en forme, CSS3

Bonjour à vous Smiley smile

Plusieurs fois j'ai été confronté à ce problème, sans jamais trouver de solution : "Comment implémenter un menu horizontal qui occupe toute la largeur du conteneur sans avoir recours aux tableaux ?"

L'utilisation d'une liste (<ul> et <li>) représente le meilleur choix sémantique possible, mais cette méthode pose problème quand il s'agit d'occuper tout l'espace disponible. En effet, on peut choisir d'aligner les items en partant de la gauche (<li> en float:right) ou de la droite (<li> en float:left), mais pas autrement...

La solution (que j'utilise quand je n'ai pas le choix) et donc de faire appel aux tableaux, qui se chargeront de répartir automatiquement l'espace libre aux différents items. Mais le bon respect du balisage sémantique en prend un coup...

Avez-vous déjà réfléchi à cela et qu'en pensez-vous ? Quelle méthode vous utilisez pour mettre en oeuvre un menu horizontal adapté à la largeur du design ?

Pour ceux qui ne comprennent pas tout je vais faire (très) bref : "Est-ce qu'on peut faire ça sans utiliser les tableaux ?".

upload/6853-menuhoriz.png

Merci pour vos retours Smiley cligne
Modifié par BeliG (17 Nov 2007 - 13:23)
Pour être plus direct: il n'y a pas de choix "sémantique" (S majusucule en général) en matière de menus de navigation, juste des choix de HTML parce qu'il faut bien que ce soirt du HTML. Le meilleur choix, partant de là, est peut-être bien le plus simple par ailleurs, par exemple pour la présentation Smiley cligne
Modifié par Laurent Denis (17 Nov 2007 - 14:53)
Bonjour à vous deux Smiley smile

@ Heyoan : J'avais déjà pensé à ce type de méthode (100% / nb d'items), mais comme tu l'as souligné si l'utilisateur augmente la taille du texte : Smiley eek Et dans le cas où les éléments sont générés dynamiquement avec possibilité de màj (cas d'un CMS), c'est quoi le plan ? Reprendre la feuille de style et changer les % ? Vraiment bof, nan ? Smiley langue

@ Laurent Denis : Un menu est pourtant une liste d'élément, dire qu'il n'y a pas de choix Sémantique concernant les menus de navigation me rend tout chose Smiley confus

Vos remarques confirment ce que je pensais initialement...
BeliG a écrit :

@ Laurent Denis : Un menu est pourtant une liste d'élément, dire qu'il n'y a pas de choix Sémantique concernant les menus de navigation me rend tout chose Smiley confus


Je m'en voudrais de te laisser tout chose tout un week-end Smiley ravi

Disons que la seule "sémantique" (Ce coup-ci, on va mettre deux S majuscules) d'un menu, c'est de dire qu'il est un menu. Ce qui n'est pas possible actuellement.

Après, qu'une série de liens soient une liste ordonnée, une liste non ordonnée, un tableau, un paragraphe, un contenu indéterminé... bof, oui, certes : c'est à voir au cas par cas pour les détails, mais l'enjeu est très très limité.
Modifié par Laurent Denis (17 Nov 2007 - 16:31)
Laurent Denis a écrit :
Après, qu'une série de liens soient une liste ordonnée, une liste non ordonnée, un tableau, un paragraphe, un contenu indéterminé... bof, oui, certes : c'est à voir au cas par cas pour les détails, mais l'enjeu est très très limité.

C'est mon avis également, mais j'connais des gens (dont un certain Andy Clarke) capables de mettre ta tête à prix pour avoir écrit ça Smiley ravi

Faut pas déconner avec la SSémantique...
Modifié par BeliG (17 Nov 2007 - 19:20)