Первое, на что я хочу обратить внимание, это то, что при стилизации DIV или чего-либо с помощью CSS3 хорошее правило - всегда делать это по классам, чтобы вы могли назначать классы нескольким элементам и использовать их повторно, чтобы избежать повторяющегося кода.Идентификаторы больше предназначены для нацеливания на объекты, и их раздельное сохранение избавит от головной боли, если и когда вы изучите jQuery / javascript.
Что вам нужно сделать при создании div 100% высоты, это назначить элементы html и body для height:100%.Все, что находится внутри тела, должно иметь минимальную высоту 100%.Высота не сработает, это просто еще один странный обходной путь для CSS.Кажется, у вас есть это внизу, но повторяющееся свойство высоты конфликтует и запутывает вещи.
Проблема с тем, что нижний колонтитул не прилипает к нижней части страницы, состоит в том, что он расположен абсолютно внизу.Если вы измените это на фиксированное, оно будет прикреплено к нижней части окна браузера.Это 40px, так что не забудьте добавить 40px отступа в конец контент-оболочки, чтобы избежать покрытия контента
Также я вижу, как вы меняете поля / отступы в вашем CSS.Хорошим инструментом была таблица стилей сброса CSS, чтобы включить ее во все страницы, созданные Эриком Мейером.Вы можете найти его здесь:
http://meyerweb.com/eric/tools/css/reset/
Это позволит выровнять игровое поле для раздражающих стилей по умолчанию для различных свойств во всех браузерах.
Надеюсь, я понял ваши вопросы иэто помогло.