Versio

[CSS] geneste absoluut gepositioneerde divs

Overzicht Reageren

Rudie dirkx

rudie dirkx

07/06/2007 15:56:00
Quote Anchor link
Ik heb twee divs met beiden position:absolute; zodat ze in het midden (van links-naar-rechts-midden) staan:

#content {
width : 1000px;
position : absolute;
left : 50%;
margin-left : -500px;
border : solid 1px fuchsia;
}

.footerpics {
position : absolute;
bottom : 80px;
width : 900px;
left : 50%;
margin-left : -450px;
text-align : center;
border : solid 1px fuchsia;
}

De div.footerpics staat IN de div#content. En dat is het probleem. De div.footerpics wordt niet absoluut gepositioneerd (in IE, FF is niet boeiend). Hij neemt namelijk de grenzen van div#content als uitersten, en niet het document (zoals ik zou verwachten!)...
De div.footerpics wordt dus niet 80px boven de document rand geplaatst, maar 80px boven de onderkant van div#content.

Dit is toch precies wat position:absolute; tegen zou moeten gaan??
Het hoeft alleen te werken in IE6+.

Dank
 
PHP hulp

PHP hulp

24/05/2012 07:43:50
Gesponsorde koppelingen:
BHosted Hosting al vanaf € 1,- per maand

Controleer nu gratis jouw domeinnaam:

  
 
Mr D

Mr D

07/06/2007 15:59:00
Quote Anchor link
als je in #content position absolute weghaalt doet hij het volgens mij wel
 
Rudie dirkx

rudie dirkx

07/06/2007 16:06:00
Quote Anchor link
Maar het staat er niet voor niets in, die position:absolute; in #content, dus die kan ik niet weghalen!!
 
Rudie dirkx

rudie dirkx

07/06/2007 16:07:00
 
Mr D

Mr D

07/06/2007 16:09:00
Quote Anchor link
dan .footerpics niet in #content zetten?
 
Rudie dirkx

rudie dirkx

07/06/2007 17:10:00
Quote Anchor link
Ook een geweldig antwoord. Als dat zou kunnen was er geen probleem. Maar dat kan dus niet. #content is namelijk alle content! En de div.footerpics valt onder content, dus in de div#content.
Meer?
 
Jan Koehoorn

Jan Koehoorn

07/06/2007 17:53:00
Quote Anchor link
Als je een div element position: absolute meegeeft, dan kijkt je browser eerst even of hij toevallig nog een parent element heeft met position: absolute, of position: relative.

Zo ja, dan positioneert je browser die div ten opzichte van de parent. Zo nee, dan haalt je browser de div uit de "document flow" zoals dat heet, en legt hem min of meer "bovenop" de andere elementen.

Als je dus twee divs echt pixel perfect op een bepaalde plek wilt zetten, moet je ze allebei een position: absolute geven, maar zorgen dat de ene zich niet binnen de andere bevindt. Bij het opgeven van breedtes richten ze zich dan weer naar de viewport.

Edit:
Voor een lay-out met een fixed footer, kijk eens naar deze, deze, deze en deze
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn
 



Overzicht Reageren