headerとfooterにボーダーを付ける代わりに、padding(全ての方向に値を入れるか、margin相殺が起こっている方向に値を入れます) を設定したりoverflow:hiddenを使用したりすることもできます。用途に応じて工夫しましょう。