<body> właściwość koloru tła nie działa poprawnie z HTML5 DOCTYPE [duplikat]

To pytanie ma już odpowiedź tutaj:

Dlaczego moja wysokość div 100% działa tylko po usunięciu DOCTYPE? 5 odpowiedzi

Więc mam podstawowy 2-kolumnowy układ HTML, do którego zastosowałem podstawowy CSS:

html {
  background-color: gray;
}

body {
  width: 900px;
  background-color: white;
  margin: 0 auto;
  overflow: hidden;
}

.logo, .nav, .contact {
  float: left;
  width: 248px;
  border: 1px black solid;
}

.about, .banner, .content {
  float: right;
  width: 648px;
  border: 1px black solid;
}

Problem polega na tym, że kiedy dodam<!DOCTYPE html> deklaracja na początku mojej strony,background-colortrybut @ nie działa dlabody tag. Zakładam, że ma to coś wspólnego z domyślnym trybem dziwactwa bez DOCTYPE, ale co robię źle, co może być nieprawidłowym CSS? (Sprawdziłem poprawność układanki i nie wyświetla żadnych błędów / ostrzeżeń.)

questionAnswers(1)

yourAnswerToTheQuestion