Your Two divs:
Not much stuff and very short.A ton of stuff on multiple lines. A ton of stuff on multiple lines. A ton of stuff on multiple lines. A ton of stuff on multiple lines. A ton of stuff on multiple lines. A ton of stuff on multiple lines.
Your simple css:
#div1 {
width: 200px;
float: left;
background-color: #0CF
padding: 10px;
}
#div2 {
width: 200px;
float: left;
background-color: #f47a21;
padding: 10px;
}
Gives you this:

But we want equal heights even if the content changes. So we add some jQuery:
var currentTallest = 0,
currentRowStart = 0,
rowDivs = new Array(),
$el,
topPosition = 0;
$('.blocks').each(function() {
$el = $(this);
topPostion = $el.position().top;
if (currentRowStart != topPostion) {
// we just came to a new row. Set all the heights on the completed row
for (currentDiv = 0 ; currentDiv < rowDivs.length ; currentDiv++) {
rowDivs[currentDiv].height(currentTallest);
}
// set the variables for the new row
rowDivs.length = 0; // empty the array
currentRowStart = topPostion;
currentTallest = $el.height();
rowDivs.push($el);
} else {
// another div on the current row. Add it to the list and check if it's taller
rowDivs.push($el);
currentTallest = (currentTallest < $el.height()) ? ($el.height()) : (currentTallest);
}
// do the last row
for (currentDiv = 0 ; currentDiv < rowDivs.length ; currentDiv++) {
rowDivs[currentDiv].height(currentTallest);
}
});
Now we have to add the blocks class to the divs that we declared in the jQuery:
Not much stuff and very short.A ton of stuff on multiple lines. A ton of stuff on multiple lines. A ton of stuff on multiple lines. A ton of stuff on multiple lines. A ton of stuff on multiple lines. A ton of stuff on multiple lines.
Yay! Equal div heights.
