Hoi,

al geruime tijd experimenteer ik met divjes, ipv tabellen voor de opmaak, maar ik stuit tegen een probleem! Ik maak met 2 divs, 2 kolommen.
Maar wanneer de content in de linkse kolom, langer is dan in de rechtse, volgt de achtergrond kleur niet.
Maar omgekeerd natuurlijk wel.

Waarschijnlijk mis ik iets kleins, maar ik vind het niet...

Voorbeeld (Klik)

Broncode
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">;
<html xmlns="http://www.w3.org/1999/xhtml">;
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
<!--
body {
background-color: #CCCCCC;
}
#wrap {
width: 800px;
margin: 0px auto 0px auto;
background-color: #FFFFFF;
}
#links {
float: left;
width: 200px;
}
#rechts {
margin-left: 220px;
}
-->
</style>
</head>
<body>
<div id="wrap">
<div id="links">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas in augue in turpis laoreet porta. Curabitur aliquet sem id dolor. Donec id quam ut mi suscipit tristique. Donec sapien nisl, vehicula sit amet, sodales at, gravida in, lectus. Mauris sem. Ut in libero. Proin condimentum, pede vitae laoreet malesuada, magna arcu posuere eros, eu tempus neque mauris vel massa. Praesent commodo ante non turpis rhoncus luctus. Nullam interdum sapien eget nulla. Cras sollicitudin. Proin dui. Donec rutrum, lorem ut iaculis vulputate, nulla mauris vestibulum diam, at ornare enim massa eleifend erat. Sed pharetra, odio et interdum venenatis, metus est feugiat mauris, vitae lobortis est ipsum sit amet nisl. Curabitur tortor. Cras sed tortor. Aenean dictum eleifend lorem. Fusce lobortis, leo ut viverra vestibulum, turpis pede dictum tellus, eu tempor erat quam non mi. Fusce ac justo porta pede mollis mattis. Quisque commodo purus sit amet ipsum.
</div>
<div id="rechts">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas in augue in turpis laoreet porta. Curabitur aliquet sem id dolor. Donec id quam ut mi suscipit tristique. Donec sapien nisl, vehicula sit amet, sodales at, gravida in, lectus. Mauris sem. Ut in libero. Proin condimentum, pede vitae laoreet malesuada, magna arcu posuere eros, eu tempus neque mauris vel massa. Praesent commodo ante non turpis rhoncus luctus. Nullam interdum sapien eget nulla. Cras sollicitudin. Proin dui. Donec rutrum, lorem ut iaculis vulputate, nulla mauris vestibulum diam, at ornare enim massa eleifend erat. Sed pharetra, odio et interdum venenatis, metus est feugiat mauris, vitae lobortis est ipsum sit amet nisl. Curabitur tortor. Cras sed tortor. Aenean dictum eleifend lorem. Fusce lobortis, leo ut viverra vestibulum, turpis pede dictum tellus, eu tempor erat quam non mi. Fusce ac justo porta pede mollis mattis. Quisque commodo purus sit amet ipsum.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas in augue in turpis laoreet porta. Curabitur aliquet sem id dolor. Donec id quam ut mi suscipit tristique. Donec sapien nisl, vehicula sit amet, sodales at, gravida in, lectus. Mauris sem. Ut in libero. Proin condimentum, pede vitae laoreet malesuada, magna arcu posuere eros, eu tempus neque mauris vel massa. Praesent commodo ante non turpis rhoncus luctus. Nullam interdum sapien eget nulla. Cras sollicitudin. Proin dui. Donec rutrum, lorem ut iaculis vulputate, nulla mauris vestibulum diam, at ornare enim massa eleifend erat. Sed pharetra, odio et interdum venenatis, metus est feugiat mauris, vitae lobortis est ipsum sit amet nisl. Curabitur tortor. Cras sed tortor. Aenean dictum eleifend lorem. Fusce lobortis, leo ut viverra vestibulum, turpis pede dictum tellus, eu tempor erat quam non mi. Fusce ac justo porta pede mollis mattis. Quisque commodo purus sit amet ipsum.
</div>
</div>
</body>
</html>


Thanks :)
Zet net voor </div> (van de 'wrap') even een <hr> (of iets anders, zolang je er maar een stylesheet op toe kan passen)

Voor hr definieer je dan:
hr{
visibility: hidden;
clear: both;
}

Bij mij werkt dat over het algemeen wel aardig.
Dit keer is een zoekopdracht in Google echt voldoende.. :)

Bovenstaande zoekopdracht geeft zoveel voorbeelden van layouts met div's en CSS. Ik denk dat jou situatie ook wel ergens tussen staat.

Ik vind het derde resultaat wel oké, qua voorbeelden...

Elwin

[Edit: leer typen.. :)]
Hm :) Het voorbeeld van Jelmer werkt leuk,
en Elwin, mja, je hebt gelijk ^^

Ik had hier al zitten lezen, maar was om eerlijk te zijn te lui om alles door te nemen daar...

Maar goed, bedankt beiden :)
Wat ik in zo'n geval altijd doe, maar misschien staat dat al in de links hierboven, is beide divs GEEN achtergrondkleur geven. Daarna maak ik een gifje dat net zo breed is als de pagina en bijv 8 pixels hoog.

De linkerhelft van het gifje krijgt de kleur die de linkerkolom moet hebben, de rechterkant krijgt een (andere) kleur die de rechterkolom moet hebben.

Daarna doe ik dit in de CSS

body {
background: #fff url(gifje.gif) center top repeat-y;
}

Dan zijn de kolommen altijd even lang. Als je ditzelfde wilt met kolommen die altijd vrij kort zijn, kun je ook de twee DIV kolommen in een container DIV prakken en die dan het achtergrondplaatje geven.
Dat gaat alleen niet werken waneer je procentuele waarden geeft aan de breedte van de divs. Het plaatje past zich dan niet aan aan die breedte.

Maar ik gebruik die manier over het algemeen ook vrij vaak, aangezien je dan nog wat fancy zooi in je achtergrond kan doen (zoals streepjes!)

Reageren