Bonjour à tous.
J'ai testé les menus déroulant en js avec le js de désactivé et je me retrouve avec des sous-menus de partout qui cachent mon corps.
En terme d'accessibilité, il y a mieux, étant donné que ceux qui desactivent js désactivent rarement le css aussi
Voila Smiley smile
Tu a de la chance, je viens de finir un menu qui fonctionne totalement en CSS sans javascript : http://toutenkamion.net/

La methode consiste à utiliser la propriétée :hover sur des listes <ul>, <li> ou des listes de définitions <dl>, <dt>, <dd> (au choix).

Voici un site qui propose des exemples de menu css sans javascript avec des li:hover

http://www.xs4all.nl/~peterned/htc/
Modifié par percherie (26 Aug 2006 - 15:11)
percherie a écrit :
Tu a de la chance, je viens de finir un menu qui fonctionne totalement en CSS sans javascript : http://percheri.eurower.net/


Salut,
Si un utilisateur de IE a javascript de desactivé, ton menu ne marchera pas. C'est un menu 'pur CSS' seulement pour les navigateurs qui n'ont pas besoin du fichier .htc
Smiley biggrin Smiley bawling

Ha ba mince, bon tant pis pour les utilisateurs de IE, je tente de leur rendre le site compatible mais il est clair que des restriction reste en place.

D'ailleur je pense mettre sur ma page d'accueil un msg explicatif les incitant à essayer Firefox après avoir lu la courte présentation de la fondation mozilla et d'autres conseils et remarques personnelle. Après ce sera à l'utilisateur final de choisir Smiley eek
mail1789 a écrit :
Bonjour à tous.
J'ai testé les menus déroulant en js avec le js de désactivé et je me retrouve avec des sous-menus de partout qui cachent mon corps.
En terme d'accessibilité, il y a mieux, étant donné que ceux qui desactivent js désactivent rarement le css aussi
Voila Smiley smile

Bonjour,

Une solution est de créer 2 feuilles de style.
La première destinée à ceux qui n'ont pas javascript est déclarée dans le head comme ceci :

<link rel="stylesheet" type="text/css" href="Menu_sansJS.css"/>

Dans le script déclaré après, on mets ceci au début :

document.getElementsByTagName("link")[0].href="Dynmenu.css"

Ce qui as pour effet de remplacer la première feuille de style déclarée par link, par celle destinée au menu dynamique.

Il faut, bien sur, retirer

window.onload=montre;
dans ce cas.
Modifié par chmel (18 Apr 2006 - 06:02)
Ok, je comprend mais pas totalement.

Dans le cas d'une utilisation d'un fichier .htc, si le javascript n'est pas activé, le survol ne fonctionne plus sur les balises <li>

Je chercherai bien à spécifier une feuille spéciale uniquement si le javascript est désactivé par internet explorer, sans cela le menu ne fonctionne pas du tout.

Ce serait pour l'afficher complettement déroulé avec une feuille spécifique.
Dans ce cas ça va devoir se faire en deux fois je pense Smiley smile

1) Tu met un commentaire conditionnel pour une feuille de style spécifique à IE, et qui comportera le code requis pour que tout le menu soit affiché dès le départ.

2) un script javascript qui va modifier les instructions de la css (uniquement si javascript est activé de par le fait ^^) pour remettre ton menu sous sa forme de menu déroualant si celà est possible...

En tout cas c'est comme celà que je procéderais, mais puisque finalement le javascript est de toute façon nécessaire, autant faire le menu avec une liste de définition et un script javascript (cf certains tutos alsa)
Modifié par Freedom_09 (18 Apr 2006 - 10:22)