Как сделать, чтобы браузер правильно понял код?
Такое происходит потому, что внутри блока есть элементы с float. Добавьте в файл стилей такой код:#big_block:after {
    content: '';
    display: block;
    clear: both;
}
habrahabr.ru/post/142486TL;DR
Стандартное поведение обтекаемых дочерних элементов (float: left). Родителю либо прописывается overflow: hidden/auto, либо применяется clearfix