Не уверен, почему браузер будет отображаться так. Я дал ему пару попыток и обнаружил, что Opera и FF оба делают это неправильно. Пока IE7 отрисовывает его правильно.
Мое знание CSS говорит о том, что div должен плавать влево, а второй div будет на 200px ниже вершины, в основном игнорируя, что первый div даже существует.
Добавляя clear: left ко второму div, давая вам
<div style="margin-top: 200px; clear:both;">div with big top margin</div>
Это будет правильно отображаться в Opera и FF, однако теперь это неправильно в IE7. IE7 добавляет дополнительное пространство сейчас. Он отображается на 200 пикселей ниже поля, а не сверху.