2010-12-06 6 views
1

J'essaie de positionner une DIV à l'intérieur d'une autre DIV sur sa partie inférieure.Positionner une DIV à l'intérieur d'une autre DIV vers le bas

Lorsque je règle la hauteur des divs externes à une certaine hauteur absolue (c'est-à-dire 100px), cela fonctionne correctement. Quand il est défini sur des pourcentages ou n'est pas défini du tout, je ne peux pas le positionner.

Voici mon CSS:

#left_pane 
{ 
    float: left; 
    margin-left: 21px; 
    position: relative; 
} 

#bottom_pic_wrapper 
{ 
    position: absolute; 
    bottom: 0; 
} 

le #bottom_pic_wrapper est à l'intérieur de #left_pane et devrait être aligné sur le fond.

Des idées pour lesquelles cela ne fonctionnera pas pour moi?

Merci :)

+0

Je ne pense pas que vous pouvez définir quelque chose comme% à moins que l'élément parent a une hauteur – hunter

+0

j'ai fait un exemple simple, laissez-moi savoir si vos exigences sont différentes, changez votre taille, mais elle reste toujours en bas – kobe

Répondre

6

j'ai fait un exemple ici jsFiddle, si utile pour vous

http://jsfiddle.net/RJXez/

laissez-moi savoir si vous avez besoin d'autre chose

Le code suivant devrait vous aider à positionner en bas toujours

var parentOffset = $('#div').offset(); 
    var parentsHeight= $('#div').height(); 
    var childsTopPostion= (parentOffset.top+parentsHeight) - heightOfchildDiv 

    $('#childdiv').css('top',childsTopPostion); 
    $('#childdiv').css('left',parentOffset.left); 
+0

Merci beaucoup - mais le problème est que je ne sais pas quelle sera la hauteur de left_pane (c'est dynamique). – Roman

+0

roaman, got it, pouvez-vous regarder cet article une fois, http://phrogz.net/CSS/vertical-align/index.html, pendant ce temps je vais comeup avec une autre solution – kobe

+0

@roman, j'ai eu une idée, l'utilisation de juery's décalage et toujours la position par rapport au parent en bas, howz cette idée ?? Etes-vous familier avec jquery offset ou avez-vous besoin d'un exemple, obtenir un offset, calculer votre hauteur div en utilisant jquery et ensuite ajouter cette hauteur à la propriété top et définir la position div, cela devrait fonctionner. – kobe

Questions connexes