IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Les transitions dans un menu déroulant


Sujet :

CSS

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    581
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 581
    Points : 146
    Points
    146
    Par défaut Les transitions dans un menu déroulant
    Bonjour,

    Je chercher à mettre en place un dropdown menu en css3, qui affiche les sous-menus au survol, mais qui offre un delay à l'utilisateur avant de disparaître lorsque le curseur ne survole plus. Je me tourne donc naturellement vers la propriété transition-delay, que je règle à 1 seconde pour le masquage, et 0 seconde pour l'affichage.
    Cela fonctionne bien, en partie : si je quitte le survol du <menu ul ul>, il met bien une seconde à disparaître, comme c'est spécifié dans le paramètre. Mais si je passe d'un <ul> à un autre, le sous-menu s'ouvre immédiatement tandis le sous-menu de l'autre menu reste affiché pendant une seconde, et donc il y a conflit visuel à l'écran.
    Est-il possible de faire en sorte que le délai de masquage d'une seconde ne soit appliqué que lorsque le survol n'est pas sur un autre menu ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <style>
    #menu ul ul {
      position: absolute;
      left: -9999px;
      width: 100%;
      opacity: 0;
      border-bottom:3px solid #85c551;
      box-shadow:0 2px 6px rgba(0,0,0,.2);
      -webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);
      -moz-box-shadow:0 2px 6px rgba(0,0,0,.2);
      transition-delay:1s;-webkit-transition-delay:1s;-moz-transition-delay:1s;-ms-transition-delay:1s;-o-transition-delay:1s;
    }
    #menu ul ul li {
      float: left;
      position: relative;
    }
    #menu > ul > li:hover > ul {
      left: 0;
      top: 40px;
      opacity: 1;
      transition-delay:0s;-webkit-transition-delay:0s;-moz-transition-delay:0s;-ms-transition-delay:0s;-o-transition-delay:0s;
    }
    </style>
    Merci d'avance.

  2. #2
    Invité
    Invité(e)
    Par défaut
    bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    #menu ul ul {
      position: absolute;
      left: -9999px;
      width: 100%;
      opacity: 0;
      border-bottom:3px solid #85c551;
      box-shadow:0 2px 6px rgba(0,0,0,.2);
      -webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);
      -moz-box-shadow:0 2px 6px rgba(0,0,0,.2);
    }
     
    #menu:not(:hover) ul ul {
      transition-delay:1s;-webkit-transition-delay:1s;-moz-transition-delay:1s;-ms-transition-delay:1s;-o-transition-delay:1s;
    }

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    581
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 581
    Points : 146
    Points
    146
    Par défaut
    Alors là moi je dis "chapeau bas" !!
    Merci, ça fonctionne exactement comme je le souhaitais, je ne connaissais pas du tout cette possibilité

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/10/2013, 13h43
  2. Réponses: 2
    Dernier message: 10/06/2009, 15h27
  3. [MySQL] Retenir les informations dans un menu déroulant après un rafraichissement
    Par cheik_koita dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 30/03/2009, 16h27
  4. Récupérér les valeurs d'un menu déroulant dans un champ texte
    Par chnizer dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 25/08/2008, 15h47
  5. lister les noms de dossier dans un menu déroulant
    Par WeDgEMasTeR dans le forum Langage
    Réponses: 9
    Dernier message: 01/04/2006, 01h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo