Я использую таблицу для создания нижнего колонтитула на каждой странице (работает в Firefox, это достаточно).
A JS Fiddle: https://jsfiddle.net/j9k2xzze/
(щелкните правой кнопкой мыши на панели вывода → Этот кадр → Открыть фрейм в новой вкладке, а затем Предварительный просмотр будет работать как обычно)
<table id="wrapper">
<thead>
<tr>
<td id="header"></td>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="0" id="footer">
<img src="footer.jpg"/>
</td>
</tr>
</tfoot>
<tbody>
<tr>
<td id="content">
<?php echo $html; ?>
</td>
</tr>
</tbody>
</table>
Но на последней странице нижний колонтитул отображается непосредственно под текстом. Если текст короче, чем последняя, нижний колонтитул привязан к нему.
Мне нравится, что нижний колонтитул находится на самой нижней части последней страницы. К сожалению, расширение @page не работает в firefox, или я делаю это неправильно:
@page:last {
#footer {
position: absolute;
bottom: 0;
}
}