I had the same problem, other published solutions did not work for me, however this happened.
Meteor (1.1.10), fourseven: scss (3.4.1), poetic: materialize-scss (1.97.3_2), kadira: flow-router (2.10.0), kadira: blaze-layout (2.3.0)
materialize.scss
.site {
display: flex;
min-height: 100vh;
flex-direction: column;
}
.site-content {
flex: 1;
}
-layout.html
<template name="masterLayout">
<div class="site">
<header>
{{> Template.dynamic template=navigation}}
</header>
<main class="site-content">
{{> Template.dynamic template=main}}
</main>
<footer class="page-footer">
{{> Template.dynamic template=footer}}
</footer>
</div>
</template>
routes.js
FlowRouter.route('/', {
name: 'home',
action: function(params, queryParams) {
BlazeLayout.render('masterLayout', {
toolbar: 'toolbar',
main: 'blog',
navigation: 'navigation',
footer: 'footer'
});
}
});