Disculpa la espera
ssclamp, ayer fue un día vil e inclemente en cuanto a trabajo
y faltó el tiempo para un montón de cosas.
En cuanto a tu respuesta del porqué:
Cita: es porque estos navegadores renderizan considerando el body (incluyendo su background) como un elemento base sobre el que 'escribir' la página (es como la misma base de una página de papel, la celulosa, puedes poner sobre el papel lo que quieras, en el orden de superposición que quieras, pero si escribes sobre la cara del papel, no puedes escribir bajo él pues debajo de el papel no hay nada).
Tu ilustrativo ejemplo no es completamente incorrecto, aunque hay una forma más sencilla y directa de decirlo: <body> es padre de <div> (yo diría que tatarabuelo
).
Ahora lanza tu pregunta
.