Scrolling with responsive grid

I’m trying to set up a responsive grid layout and everything works apart from the scrolling. I need the body to always fill the height of the screen (height:100%) but when the screen size changes or the grid rearranges, the grid just gets cut off at the end of the viewport. I can only get proper scrolling by setting an explicit height on a containing element but this is something I’d like to avoid.

It’s part of a salesforce visualforce page enabled for mobile, so the whole page is rendered in an iframe.