Они делают все правильно я про правельные браузеры.
1. Растягивают обьект на 100% доступной высоты, далее добовляют отступ с верху и с низу, в итоге получаем 100%+ отступы, все верно как и на теории, с другой стороны не верно с paddingom, от должен применятся к уже растянатому блоку и не влиять на его стороны так как это все навсего внутрений отступ, а он используется браузерами как в margin только задний фон еще натягивает.
всё очень просто, если прочтёте спецификацию
в нормальном потоке margin'ы родителей и детей арифметически складываются
попробуйте float:left для контейнера, что бы бы разрушить нормальный поток
Хочешь несколько колонок одинаковой высоты? С этим блоки пока что плохо стараются, можно влепить одну-другую таблицу. Главное, чтобы таблиц не стало сто =) Или посмотри на уже готовые примеры: softwaremaniacs.org/blog/feed/atom/
Уважаемый Chupa!
Если Вы подозреваете, что я как-то связан с ресурсом, на который ведёт эта ссылка, то Вы ошибаетесь. И Ваши обвинения в накрутке чьей либо посещаемости не обоснованы. Тем более, что ссылки публикую не я :)
Робкое предложение: почитайте Эрика Мейера «CSS — каскадные таблицы стилей. Подробное руководство». Практически единственная приличная книга по CSS на русском. И там очень хорошо описано и поведение полей (схлопывающиеся поля), и ещё много чего.
Вы даже не представляете, как полезно всё это прочесть и знать до того, как возникнут подобные вопросы и придётся ломать голову над их разрешением.
Странное поведение «правильных» браузеров