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

HTML Discussion :

[Form] Superposition d'une liste select sur une div 'absolute'


Sujet :

HTML

  1. #1
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 224
    Points : 116
    Points
    116
    Par défaut [Form] Superposition d'une liste select sur une div 'absolute'
    Ma page possède une <div> en position absolute mais le composant html select s'affiche avant et donc ne se met pas en arrière plan.

    Ce bug est connu des développeurs web mais je n'ai pas trouvé de solution séduisante pour le corrigé, merci d'avance.

  2. #2
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Peux tu nous donner ton code merci

    Si je traduis ce que tu dis ca doit donner ca :
    Code html : 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
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
            "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <title>Untitled</title>
        <style type="text/css" title="text/css">
    /* <![CDATA[ */
    #main { position:absolute; width:400px; height:200px; background-color:gray; }
    /* ]]> */
    </style>
    </head>
    <body>
    <div id="main">
    <form action="toto" method="post">
    <select id="tutu" size="10">
    <option label="tata" value="titi"></option>
    </select>
    </form>
    </div>
    </body>
    </html>

    et chez moi ca marche correctement le select se trouve à l'intérieur du div...

  3. #3
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 224
    Points : 116
    Points
    116
    Par défaut
    Le code est effectivement cohérent avec ma question, j'ai cependant ajouté un element <label>.
    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
    24
    25
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
            "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <title>Untitled</title>
        <style type="text/css" title="text/css">
    /* <![CDATA[ */
    #main { position:absolute; width:400px; height:200px; background-color:gray; }
    /* ]]> */
    </style>
    </head>
     
    <body>
    <div id="main"></div>
    <form action="toto" method="post">
    <select id="tutu" size="10">
    <option label="tata" value="titi"></option>
    </select>
    <html:input type="text"/>
    <label>Coucou</label>
    </form>
     
    </body>
    </html>
    On remarque que la div couvre le label mais pas le select.

  4. #4
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Ton form se trouve en dehors du div !!
    C'est tout à fait normal qu'il est couvert

    Entoure ton form avec ton div et plus de problème...

  5. #5
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 224
    Points : 116
    Points
    116
    Par défaut
    Ton form se trouve en dehors du div !!
    C'est tout à fait normal qu'il est couvert

    Entoure ton form avec ton div et plus de problème...
    La div est en position absolute donc sortie du flux normal. Teste mon code est tu verras que la balise html <libelle> est bien couverte alors que le select non

  6. #6
    Membre régulier
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 83
    Points : 101
    Points
    101
    Par défaut
    En disposant le div gênant en arrière plan (z-index -1) sa doit coller non ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    main { position:absolute;z-index:-1; width:400px; height:200px; background-color:gray; }

  7. #7
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Si tu souhaites que tout soit "dessus" place tes éléments à l'intérieur du div !

    Maintenant avec ton code, chez moi, tout est masqué par la div, ce qui me semble tout à fait normal étant donné que la position absolute sort le cadre du flux!

    Sinon indique précisément ce que tu souhaites comme résultat ...

  8. #8
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 284
    Points : 349
    Points
    349
    Par défaut
    bug IE5 et 6 windows, résolu sur IE7.

    Le widget windows utilisé par IE pour les select est plus balaise que ceux utilisé pour les autres elements.
    Uniquement un iframe peut passer au dessus des select dans IE 5 et 6.

    Une solution souvent utilisé est de positionner un iframe créé dynamiquement entre ton div et ton select (j'entend "entre" sur le plan z-index, par exemple select.z-index = 1, iframe.z-index = 2, div.z-index = 3).

    le div passe bien au dessus de l'iframe, et l'iframe passe bien au dessus du select.

    Maintenant, plutot que de faire du javascript pénible pour creer l'iframe et la positionnée ou il faut, je dirais plutot tant pis pour les gars encore sous IE6

Discussions similaires

  1. [AJAX] liste liée a une liste liée a une liste
    Par dirty_harry dans le forum AJAX
    Réponses: 2
    Dernier message: 03/07/2009, 11h18
  2. recuperer selection sur une liste deroulante
    Par skillipo dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 18/02/2008, 09h17
  3. select sur une liste de clef
    Par Julien666 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 31/10/2007, 18h49
  4. [AJAX] Aide à la recherche sur une liste <select>
    Par lthibert dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 16/06/2007, 13h00
  5. select sur une liste chaînée
    Par wtfu dans le forum Langage SQL
    Réponses: 1
    Dernier message: 01/06/2006, 15h30

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