В практике верстки давно уже существует понятие препроцессоров, возьмем к примеру связку
gulp /
sass. В gulp используем плагин
gulp-rigger, благодаря которому имеем: header.html и footer.html, которые подключаем на нужные страницы с помощью команды:
//= template/header.html
стили с помощью sass, а именно правила 7 к 1, прописываем один раз к примеру в файле header.scss и footer.scss. И не важно сколько у вас страниц, вы один раз прописали все это и верстаете себе, это касается не только header и footer, это можно использовать с любым повторяющемся блоком.
Знакомьтесь с препроцессорами и удачи.