Hola Isabel_Maria:
Tienes razón, aunque siempre se puede crear un objeto imagen con la ídem que quieras usar de fondo...
<script>
var imagen = new Image();
imagen.src = "miImagen.jpg";
function cargando() {
if (imagen.complete) cargada()
else setTimeout("cargando()", 100)
}
function cargada() {
document.getElementById("precarga").style.display = "block";
}
</script>
<body onload="cargando()" >
...
<div id="precarga" style="background-image: url(miImagen.jpg); display: none" >...cargada...</div>
Lo puse de memoria, así que puede dar algún error, pero espero que se vea la idea.
Saludos