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 :

Popup dhtml toujours vers le bas


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 91
    Par défaut Popup dhtml toujours vers le bas
    Bonjour,

    je cherche à ce qu'une infobulle dhtml s'affiche toujours vers le bas et non vers le haut quitte à passer sous le navigateur quand le navigateur est trop descendu (ça le fait automatiquement et je ne sais pas comment désactiver cette fonction), démonstration en images :

    Bon :



    Mauvais :



    J'ai eu beau chercher sur google, je ne trouve pas de solution n'ayant pas de mot clé.

    Je ne sais pas si je doit toucher à z-index, float, position ou autre.

    Merci d'avance pour votre lumière !
    ++

    Edit : Je rajoute le CSS :

    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
    .balloonstyle{
    position:absolute;
    left: 0;
    top: 0;
    float: bottom;
    bottom: -2000;
    padding: 5px;
    visibility: hidden;
    border:1px solid #3399CC;
    font:normal 10px;
    z-index: 1000;
    background-color: white;
    width: 245px;
    /*Remove below line to remove shadow. Below line should always appear last within this CSS*/
    filter: progid:DXImageTransform.Microsoft.Shadow(color=gray,direction=135,Strength=5);
    text-align: left;
    }
     
    #arrowhead{
    z-index: 99;
    position:absolute;
    top: -500px;
    left: 0;
    visibility: hidden;
    }
    Images attachées Images attachées   

  2. #2
    Membre averti
    Inscrit en
    Août 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 18
    Par défaut
    Salam,

    - Déjà, float:bottom ça n'existe pas, hein ! (de façon générale, la philosophie de positionnement CSS a une tendance horizontale et non verticale)

    - Après, là c'est le style d'affichage de la bulle. Même si j'ai pas encore bien regardé le style que tu as posté (je me suis arrêté à float:bottom ) il m'est avis qu'il faudra plus chercher dans le code qui affiche la bulle. Est-ce qu'il n'y aurait pas un petit script (JavaScript) qui permet d'appeller la bulle ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 91
    Par défaut
    Ok merci, voila le fichier javascript :

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    //Rich HTML Balloon Tooltip: http://www.dynamicdrive.com/dynamicindex5/balloontooltip.htm
    //Created: September 10th, 2006
     
    var disappeardelay=10  //tooltip disappear delay (in miliseconds)
    var verticaloffset=0 //vertical offset of tooltip from anchor link, if any
    var enablearrowhead=1 //0 or 1, to disable or enable the arrow image
    var arrowheadimg=["css/arrowdown.gif", "css/arrowup.gif"] //path to down and up arrow images
    var arrowheadheight=11 //height of arrow image (amount to reveal)
     
    /////No further editting needed
     
    var ie=document.all
    var ns6=document.getElementById&&!document.all
    verticaloffset=(enablearrowhead)? verticaloffset+arrowheadheight : verticaloffset
     
    function getposOffset(what, offsettype){
    var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
    var parentEl=what.offsetParent;
    while (parentEl!=null){
    totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
    parentEl=parentEl.offsetParent;
    }
    return totaloffset;
    }
     
    function showhide(obj, e){
    dropmenuobj.style.left=dropmenuobj.style.top="-100000px"
    if (e.type=="mouseover")
    obj.visibility="visible"
    }
     
    function iecompattest(){
    return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
    }
     
    function clearbrowseredge(obj, whichedge){
    if (whichedge=="rightedge"){
    edgeoffsetx=0
    var windowedge=ie && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-15 : window.pageXOffset+window.innerWidth-15
    dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
    if (windowedge-dropmenuobj.x < dropmenuobj.contentmeasure)
    edgeoffsetx=dropmenuobj.contentmeasure-obj.offsetWidth
    return edgeoffsetx
    }
    else{
    edgeoffsety=0
    var topedge=ie && !window.opera? iecompattest().scrollTop : window.pageYOffset
    var windowedge=ie && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
    dropmenuobj.contentmeasure=dropmenuobj.offsetHeight
    if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure) //move up?
    edgeoffsety=dropmenuobj.contentmeasure+obj.offsetHeight+(verticaloffset*2)
    return edgeoffsety
    }
    }
     
    function displayballoontip(obj, e){ //main ballooon tooltip function
    if (window.event) event.cancelBubble=true
    else if (e.stopPropagation) e.stopPropagation()
    if (typeof dropmenuobj!="undefined") //hide previous tooltip?
    dropmenuobj.style.visibility="hidden"
    clearhidemenu()
    //obj.onmouseout=delayhidemenu
    dropmenuobj=document.getElementById(obj.getAttribute("rel"))
    showhide(dropmenuobj.style, e)
    dropmenuobj.x=getposOffset(obj, "left")
    dropmenuobj.y=getposOffset(obj, "top")+verticaloffset
    dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")+"px"
    dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+obj.offsetHeight+"px"
    if (enablearrowhead)
    displaytiparrow()
    }
     
    function displaytiparrow(){ //function to display optional arrow image associated with tooltip
    tiparrow=document.getElementById("arrowhead")
    tiparrow.src=(edgeoffsety!=0)? arrowheadimg[0] : arrowheadimg[1]
    var ieshadowwidth=(dropmenuobj.filters && dropmenuobj.filters[0])? dropmenuobj.filters[0].Strength-1 : 0
    //modify "left" value depending on whether there's no room on right edge of browser to display it, respectively
    tiparrow.style.left=(edgeoffsetx!=0)? parseInt(dropmenuobj.style.left)+dropmenuobj.offsetWidth-tiparrow.offsetWidth-10+"px" : parseInt(dropmenuobj.style.left)+5+"px"
    //modify "top" value depending on whether there's no room on right edge of browser to display it, respectively
    tiparrow.style.top=(edgeoffsety!=0)? parseInt(dropmenuobj.style.top)+dropmenuobj.offsetHeight-tiparrow.offsetHeight-ieshadowwidth+arrowheadheight+"px" : parseInt(dropmenuobj.style.top)-arrowheadheight+"px"
    tiparrow.style.visibility="visible"
    }
     
    function delayhidemenu(){
    delayhide=setTimeout("dropmenuobj.style.visibility='hidden'; dropmenuobj.style.left=0; if (enablearrowhead) tiparrow.style.visibility='hidden'",disappeardelay)
    }
     
    function clearhidemenu(){
    if (typeof delayhide!="undefined")
    clearTimeout(delayhide)
    }
     
    function reltoelement(linkobj){ //tests if a link has "rel" defined and it's the ID of an element on page
    var relvalue=linkobj.getAttribute("rel")
    return (relvalue!=null && relvalue!="" && document.getElementById(relvalue)!=null && document.getElementById(relvalue).className=="balloonstyle")? true : false
    }
     
    function initalizetooltip(){
    var all_links=document.getElementsByTagName("a")
    if (enablearrowhead){
    tiparrow=document.createElement("img")
    tiparrow.setAttribute("src", arrowheadimg[0])
    tiparrow.setAttribute("id", "arrowhead")
    document.body.appendChild(tiparrow)
    }
    for (var i=0; i<all_links.length; i++){
    if (reltoelement(all_links[i])){ //if link has "rel" defined and it's the ID of an element on page
    all_links[i].onmouseover=function(e){
    var evtobj=window.event? window.event : e
    displayballoontip(this, evtobj)
    }
    all_links[i].onmouseout=delayhidemenu
    }
    }
    }
     
    if (window.addEventListener)
    window.addEventListener("load", initalizetooltip, false)
    else if (window.attachEvent)
    window.attachEvent("onload", initalizetooltip)
    else if (document.getElementById)
    window.onload=initalizetooltip

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

Discussions similaires

  1. scrollbottom au max vers le bas
    Par avogadro dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 25/11/2006, 15h25
  2. Décalage vers le bas sous IE
    Par Fugugirl dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 21/11/2006, 11h23
  3. definir la position de la barre de défilement au maximun vers le bas
    Par tdo1 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 28/09/2006, 22h26
  4. Réponses: 2
    Dernier message: 05/07/2006, 16h52
  5. [VB et Word] Se déplacer d'une ligne vers le bas...
    Par benj63 dans le forum VBA Word
    Réponses: 7
    Dernier message: 15/03/2006, 09h45

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