@romaromk там фиксированная высота только для того, чтобы инициализировать скролл. В «боевом» окружении её вообще не нужно задавать. Вся суть в том, что у контента нижний margin равен высоте футера, а сам футер имеет position: fixed; и z-index меньше, чем у контента, чтобы быть на заднем плане. Это даже проще, чем сделано на elementaryos.org. Там футер — это «окно», через которое видно вложенный DIV с position:fixed.
То есть, футер там — подложка, но выполняет роль окна, так как ему жёстко задана такая же высота, что и вложенного в него fixed-блока, но z-index установлен меньше. В общем, там замороченно сделано. @webvany проще сделал.
Теперь понял. Там сделали немного сложнее. Там не пришлось прописывать margin-bottom для остального контента. Они вставили Footer, а в него фиксированных текст (ссылки, меню и пр.). То есть текст ездит за контентом, как и у меня (только у меня он ездит вместе с футером). Я бы скорей всего поступил как они, это проще для дальнейшего редактирования, как мне кажется. Хотя не уверен, всё зависит от случая.
@webvany ваш код работает, но я так и не смог сделать высоту блока с контентом на 100% экрана. То есть, допустим, на одной странице контента много и там всё выглядит хорошо, а на другой контента пару строчек и получается, что футер торчит на половину, что есть не эстетично. На сайте, который я привел в качестве примера блок с контентом перекрывает всю высоту экрана, даже если контент не заполняет всю высоту (пример: elementaryos.org/answers/why-no-dexter). Сколько я ни копался в ихнем коде, так и не хватило ума сделать также :(
Можно сделать footer фиксированным (position: fixed; bottom: 0; z-index: -1), а остальной контент страницы сделать с margin-top: высота footer. Точно сказать не могу. Но должно получится что-то. Щас попробую сделать на codepen