Probleem waar ik al lang mee worstel:
Stel je hebt 2 DIVs: outerDiv en innerDiv. Hieronder bevind zich een floatDiv (float of gewone div, maakt voor de testcase niet uit).
Wat ik wil verkrijgen is het volgende. De innerDiv moet absoluut gepositioneerd worden, met als referentie punt de outerDiv. Dit bereiken we door de volgende CSS code:
Wat ik nu zou willen, is dat wanneer innerDiv in hoogte toeneemt, de outerdiv meegroeit. De floatDiv wordt dan gewoon omlaag geduwd afhankelijk van de content in innerDiv. Dit is normaal gedrag bij height: auto, maar NIET wanneer de innerDiv dus absoluut is gepositioneerd. De outerDiv groeit dan niet mee, daar innerDiv absoluut is gepositioneerd en dus buiten de regulier flow van het document valt.
Ik heb tot op heden hier nog geen oplossing voor weten te vinden (met CSS).
Iemand ideeën ?
Mijn idee omvat geen CSS, maar javascript. Dus hoogte van innerDiv uitlezen en die vervolgens naar de outerDiv gooien. Maar dan komt er dus weer javascript bij kijken. Is er een 'schone' manier met CSS ?
Alvast bedankt als je de moeite genomen hebt om de code te bekijken.
Stel je hebt 2 DIVs: outerDiv en innerDiv. Hieronder bevind zich een floatDiv (float of gewone div, maakt voor de testcase niet uit).
HTML:
1
2
3
4
5
6
7
8
| <div class="outerDiv"> <div class="innerDiv> </div> </div> <div class="floatDiv"> </div> |
Wat ik wil verkrijgen is het volgende. De innerDiv moet absoluut gepositioneerd worden, met als referentie punt de outerDiv. Dit bereiken we door de volgende CSS code:
Cascading Stylesheet:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| .outerDiv { width: 100px; height: auto; background-color: #99FF00; position: relative; } .innerDiv { width: 50px; height: auto; /* Hypothetisch is innerDiv.style.height > outerDiv.style.height */ background-color: #CCCCFF; position: absolute; top: 0px; left: 0px; } floatDiv { width: 100px; height: 50px; float: left; background-color: #FFCC00; } |
Wat ik nu zou willen, is dat wanneer innerDiv in hoogte toeneemt, de outerdiv meegroeit. De floatDiv wordt dan gewoon omlaag geduwd afhankelijk van de content in innerDiv. Dit is normaal gedrag bij height: auto, maar NIET wanneer de innerDiv dus absoluut is gepositioneerd. De outerDiv groeit dan niet mee, daar innerDiv absoluut is gepositioneerd en dus buiten de regulier flow van het document valt.
Ik heb tot op heden hier nog geen oplossing voor weten te vinden (met CSS).
Iemand ideeën ?
Mijn idee omvat geen CSS, maar javascript. Dus hoogte van innerDiv uitlezen en die vervolgens naar de outerDiv gooien. Maar dan komt er dus weer javascript bij kijken. Is er een 'schone' manier met CSS ?
Alvast bedankt als je de moeite genomen hebt om de code te bekijken.
[ Voor 29% gewijzigd door George op 11-03-2006 01:13 ]
-George.