Positionner un div au centre de l'écran [Résolu]

Signaler
Messages postés
249
Date d'inscription
jeudi 17 février 2005
Statut
Membre
Dernière intervention
29 août 2011
-
Evangun
Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
-
Bonjour,

Mon probléme est le suivant, je n'arrive pas a center en hauteur un div (position:absolute; // au niveau du BODY).

Si je ne peux pas scroller, j'ai aucun soucis, celui est parfaitement centré ! Mais si je scrool (en hauteur), il sera centré comme si je n'avais pas scrollé.

Donc, en gros, comment connaitre la position du document étant scroller.

L'object :

Vous n'avez pas saisie tous les champs du formulaire.

[# Fermer]

Fonction de positionnement :
function open_error(type) { // type = id de l'objet à pos
    if (document.height < screen.heigh) var h=screen.heigh;
    else var h=document.height;
    document.getElementById('content-error').style.height=h;
    document.getElementById('content-error').style.display='block';
   
    getWindow();
    var posLeft=(pageWidth-400)/2;
    var posTop=(pageHeight-50)/2;
    document.getElementById(type).style.marginLeft=(posLeft<0) ? 0+"px" : posLeft+"px";
    document.getElementById(type).style.marginTop=(posTop<0) ? 0+"px" : posTop+"px";
    document.getElementById(type).style.display='block';
}

function getWindow() {
  pageWidth =  window.innerWidth;
  pageWidth = (pageWidth) ? pageWidth : document.documentElement.clientWidth;
  pageWidth = (pageWidth) ? pageWidth : document.body.clientWidth;

  pageHeight =  window.innerHeight;
  pageHeight = (pageHeight) ? pageHeight : document.documentElement.clientHeight;
  pageHeight = (pageHeight) ? pageHeight : document.body.clientHeight;
}

http://www.exile.fr

1 réponse

Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
Salut,

il te manque document.documentElement.scrollTop qui est la distance entre tout en haut du document et le haut de l'écran. Tu ajoutes ça à chaque scroll et ta div sera toujours centrée.

à+