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

JavaScript Discussion :

height:auto et Height/offsetHeight


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 92
    Points : 57
    Points
    57
    Par défaut height:auto et Height/offsetHeight
    Bonjour,

    Je cherche tout simplement à centrer verticalement une fenêtre avec hauteur automatique (height:auto) dans le navigateur.

    Sauf que dans ce cas, je ne sais pas comment récupérer la hauteur de la fenêtre en JS.

    J'utilise normalement prototype et la fonction getDimensions, mais rien ne m'y oblige dans ce cas.

    Une idée ?


    Merci beaucoup,

    A+ benjamin.

  2. #2
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    pour centrer un élément verticalement , avec une height en auto, il te faut récupérer la hauteur du contenu avec offsetHeight , puis positionner ton élément ( en absolu ! ) a top:50%; et enfin margin-top:- offsetHeight /2.

    Ceci est l'algorithme ! tu n'as plus qu'a adapter
    est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

    Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 92
    Points : 57
    Points
    57
    Par défaut
    Ok, alors je me rend compte que le problème était un peu plus complexe.

    J'ai écris une classe JS qui est censée me charger n'importe quel contenu via une requête Ajax dans une fenêtre modal.

    Cette fenêtre "container" doit donc avoir une hauteur auto.

    Jusque là facile.

    La classe fonctionne comme suis:
    - création des éléments (overlay, container)
    - chargement du contenu (via Ajax.Updater)
    -> Succès = centrage + Effect.Appear

    Sauf qu'au moment où j'appelle la méthode (this.center()) qui est censée centrer le container dans la fenêtre, offsetHeight vaut 0. Et si j'effectue le Appear avant, je perd tous mes effets, puisque la fenêtre apparait puis se centre ensuite.

    On dirait que la valeur de la hauteur vaut 0 tant que l'élément n'est pas visible. C'est gênant, je voudrais pouvoir connaitre la hauteur du container avant de l'afficher à l'utilisateur.


    Merci pour ton aide


    A+ benjamin.

  4. #4
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    oui la hauteur est a 0 si tu as un display : none ;-)
    est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes

    Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )

Discussions similaires

  1. height:auto
    Par G-First dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 09/09/2008, 18h06
  2. Utilisation de [height: auto] avec [max-height] et IE
    Par Droïde Système7 dans le forum Mise en page CSS
    Réponses: 15
    Dernier message: 23/12/2007, 11h08
  3. problème height auto
    Par aleexoo dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 11/09/2007, 11h39
  4. Problème avec height: auto;
    Par webrider dans le forum Mise en page CSS
    Réponses: 9
    Dernier message: 25/07/2007, 17h16
  5. height: auto
    Par jakkihm dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 03/11/2006, 09h19

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