2011-02-02 13 views
6

Mam szablon html - div # container wewnątrz ciała, a niektóre absolutnie ustawione divy w kontenerze bez stałej wysokości. Czy istnieje sposób na zwiększenie rozmiaru kontenera do 100% wysokości strony?Czy istnieje sposób na absolutnie pozycjonowane elementy div, aby rozwinąć kontener?

Oto obraz demostrating mój problem: http://habreffect.ru/files/4f3/54ad48420/q.png

Rozumiem, że absolutnie pozycjonowane div są „niewidzialne” dla kontenera, ale niestety dostałem okno przeglądarki rozszerzony. Problem polega na tym, że nie mogę sprawić, by ciało pasowało do 100% strony, a jeśli zrobię wysokość: 100% ciała (i html) zmieści się w 100% wysokości okna (moje jest około 900px), ale nie wysokość strony.

Plz przepraszam, jeśli pytanie jest naprawdę głupie.

Odpowiedz

4

Będziesz mieć problemy z Explorer (nie pamiętam które wersje), ale można ustawić

left:0; 
right:0; 
top:0; 
bottom:0; 

aby rozwinąć elementu pozycjonowanego bezwzględnie w pojemniku, którego wymiary zostały ustawione (w tym albo w rodzic)

1

jedynym sposobem, widzę to poprzez javascript

// returns the coordinates of top/left corner of an element 
function getPosition(obj) 
{ 
    var left = 0; 
    var top = 0; 
    if (obj.offsetParent) 
    { 
     do 
     { 
     left += obj.offsetLeft; 
    top += obj.offsetTop; 
    } 
    while (obj = obj.offsetParent); 
} 
return {x:left, y:top}; 
} 

document.onload = function() 
{ 
    var div = document.getElementById('yourLowestPositionnedDiv'); 
    var divBottom = getPosition(div).y + div.offsetHeight; // y coordinate of the bottom/left corner 
    document.body.style.height = divBottom - getPosition(document.body).y; 
} 

Ten kod powiększyć rozmiar swojego ciała w czasie wykonywania tak, że kończy się tuż poniżej ciebie r najniższy bezwzględny div.

Powiązane problemy