@import 'govuk/-essentials';

html,
body {
  height: 100%;
}

body {
  @include display(flex);
  @include flex-direction(column);
  padding: 0;
  margin: 0;

  > header,
  > footer {
    @include flex(none);
  }
}

.main-content {
  @include flex(1 0 auto);
  min-height: 450px;
  display: block;
  padding: $container-v-padding $container-h-padding 50px;

  @media print {
    padding: 0;
  }
}

@import 'govuk/-essentials';

html,
body {
  height: 100%;
}

body {
  @include display(flex);
  @include flex-direction(column);
  background: $grey-3;
  padding: 0;
  margin: 0;

  > header,
  > footer {
    @include flex(none);
  }

  @media print {
    background: white;
  }
}

.main-content {
  @include flex(1 0 auto);
  min-height: 450px;
  display: block;
  background: white;
  padding: $container-v-padding $container-h-padding 50px;

  @media print {
    padding: 0;
  }
}

Use grey body background to better blend the footer
Use grey body background to better blend the footer

In browsers that don’t support flex box for sticky footer
