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 :

Bug avec float


Sujet :

CSS

  1. #1
    Membre régulier Avatar de StripMat
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 206
    Points : 93
    Points
    93
    Par défaut Bug avec float
    Bonjour, j'ai construit des menus verticaux à plusieurs niveaux, pour indiquer la présence d'un sous menu sous un des item, je place une petite flêche à côté.

    Seulement, j'ai quelque problèmes de positionnement
    Nom : bug-caret.png
Affichages : 111
Taille : 11,2 Ko

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ...
    <li class="dropdown-submenu">
    	<a class="itemnode-1" unselectable="on" href="">Légumes secs<span class="caret"></span></a><span class="caret-ie"></span>
    	<ul class="dropdown-menu">
    ...
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    .normal .caret {
    display: inline; 
    width: 0;
    height: 0;
    margin-left: 2px;
    vertical-align: middle;
    border-top: 4px solid;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    position:relative;
    right:3px;
    top:5px;
    float:right;
    }

    Sa ne bug que pour Mozilla Firefox. Lors du survol d'un item du menu, s'il y a sous-menu, celui-ci est display. Parfois après un display/hide, le ".caret" se positionne là ou il devrait etre, mais c'est aléatoire, je survol il se repositionne, je quitte la zone il repars en vrille, et c'est pas toujours le cas...

    Qu'est-ce qui peut foirer autant ?

    Résultat attendu
    Nom : bug-caret2.png
Affichages : 102
Taille : 16,1 Ko

  2. #2
    Expert éminent Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 858
    Points : 6 556
    Points
    6 556
    Par défaut
    Tu devrais montrer le code de tout ton menu (html et css) car juste avec ce que tu as donné c'est difficile de t'aider. En clair le code de toute l'image que tu as posté.
    Brachygobius xanthozonus
    Ctenobrycon Gymnocorymbus

  3. #3
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Bonjour,
    peut être que l’exemple complet que je t'ai mis dans cette discussion te permettra de résoudre ton problème, via une utilisation du pseudo-élément :after.

  4. #4
    Membre régulier Avatar de StripMat
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 206
    Points : 93
    Points
    93
    Par défaut
    @NoSmoking

    Pour mon mode "au clic" je pense m'inspirer de ton menu, néanmoins j'aimerai vraiment garder mes menus déroulant au survol.

    Voila un de mes menus, l'item BDPI fonctionne parfaitement, le "caret" est bien positionné à droite. Par contre sur Contrat, sa foire aussi.
    JSFiddle

    Sa semble foirer sur tous les navigateurs, pour ce menu sa passe pas ni sur Mozilla ni sur IE, par contre Chrome aucun probleme. Alors que celui que j'ai présenté en photo, sa passait bien sur IE mais pas sur Chrome ni Mozilla.

    EDIT
    Voila le premier exemple
    JSFiddle

  5. #5
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Place plutôt tes "caret" en position:absolute et non en float:right.

    Pour information il faut respecter l'ordre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    -webtkit-transition: 2s ease-in-out;
        -moz-transition: 1s opacity 0.3s;
             transition: 0.5s ease-in-out;
    la version sans préfixe propriétaire en fin (tu n’appliques pas les mêmes transition suivant les navigateurs ?).

  6. #6
    Membre régulier Avatar de StripMat
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 206
    Points : 93
    Points
    93
    Par défaut
    Le coup du position:absolute fonctionne, mais uniquement pour les items de premiers niveaux, mais comment "reverse" le left:25px que j'applique au <ul> lorsque un sous-menu est display, pour créer une certaine indentation. Il faudrait inverser ce décalage uniquement pour le "caret".

    Et si rassure toi, je vais harmoniser les transitions, c'est une erreur de ma part que tu fais bien de souligner !

  7. #7
    Membre régulier Avatar de StripMat
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 206
    Points : 93
    Points
    93
    Par défaut
    J'ai trouvé la solution
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    .dropdown-menu .caret
    {
        right:25px;
    }

    Par contre j'ai remarqué que si on survol jusqu'a environs 200px SOUS mon menu, sa déclenche un évent hover et sa display un des sous menus.
    Je pense que c'est parceque j'utilise max-height:0 et opacity:0 plutôt que display:none, une idée pour rendre "inactif" les évenements "non apparents" (opacity:0, max-height:0) ?
    JSFiddle

  8. #8
    Membre régulier Avatar de StripMat
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 206
    Points : 93
    Points
    93
    Par défaut
    C'était finalement pas sorcier

    j'ai rajouté visibility:hidden
    Code css : 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
     
    .normal .dropdown-submenu:hover>.dropdown-menu {
    	max-height:1000px;
      	opacity:1;
      	visibility:visible;
      	position:relative;
    	top:0px;
    	left:25px;
        transition: 0.8s ease-in-out;
        transition-delay:1s;
    }
     
    .normal .dropdown-menu {
      max-height:0em; 
      opacity:0;
      visibility: hidden;
    }

  9. #9
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Visiblement un overflow: hidden; sur l'UL principale devrait également faire l'affaire et me semble plus cohérent.

  10. #10
    Membre régulier Avatar de StripMat
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 206
    Points : 93
    Points
    93
    Par défaut
    Effectivement, sa fonctionne exactement pareil et c'est d'autant plus cohérent.

    Merci pour ces informations,

    Sujet résolu !

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

Discussions similaires

  1. [HTML][Bug] Avec les float/clear, c'est moi ou FF ?
    Par Séb. dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 02/01/2006, 14h56
  2. Bug avec le test de profondeur
    Par Tellmarch dans le forum OpenGL
    Réponses: 1
    Dernier message: 17/10/2004, 00h59
  3. Bug avec requete
    Par arsgunner dans le forum ASP
    Réponses: 8
    Dernier message: 14/06/2004, 16h25
  4. [C#] Bug (?) avec la propriété TransparencyKey de la Form
    Par FrigoAcide dans le forum Windows Forms
    Réponses: 5
    Dernier message: 21/05/2004, 14h14
  5. [CR9] Bug avec les champs à valeur vide ?
    Par Djob dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 15/07/2003, 21h21

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