Как мне сделать так, чтобы при расширении первого div ... нижний div автоматически уменьшался, поскольку высота первого div теперь больше?
Это дисплей? Или должность?
Я бы предложил использовать плавающие элементы. Это гарантирует, что контейнер под ним всегда будет оставаться под верхним контейнером, в зависимости от того, где заканчивается верхний контейнер. I.e.:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <body> <div style="height:250; width:250px; background-color:red; float:left;"> TOP </div> <div style="height:250; width:250px; background-color:blue; float:left; clear:left;"> BOTTOM </div> </body> </html>
Я бы посоветовал вам загрузить Firebug и настроить CSS своей страницы, чтобы сделать ее так, как вы хотите - начните играть с атрибутом display.
Используйте поплавки. Поплавок вверху слева (или справа). Установите нижний для очистки влево (или вправо).