Me gustaría ver el html y css completo, porque por ejemplo en el código que colocas no esta el footer
Sí quieres puedes hacer una demo en
codepen.io
Así por encima y sin código, puedo suponer que tiene algo que ver con el modelo de caja, por ejemplo. usa box-sizing y prueba a ver que sucede:
Lo otro que te puedo recomendar es el website del viejo sticky footer:
http://ryanfait.com/resources/footer...ottom-of-page/
O a mi parecer el más claro es Chris Coyier (aunque sea practicamente lo mismo):
https://css-tricks.com/snippets/css/sticky-footer/
Incluso ahora se resuelve con flexbox:
https://philipwalton.github.io/solve...sticky-footer/
Nos cuentas a ver que tal.