Hola:
Es que para saber el tamaño del body dependes de javascript (document.body.offsetWidth/offsetHeight)... y el body tiene que estar cargado (<body onload=""...>) a no ser que lo acotes con estilos, pero en este caso tendrías que estudiar bien los estilos que vas a poner (width/height/overflow/background-attachment...) y si se excede de cierto tamaño deberías tener un scroll que no creo adecuado.
En el artículo puedes ver el código que se genera al pinchar en los botones que hay a pie de página (con degradados):
Código:
<script type="text/javascript">
function gradiente(color1, color2) {
elemento = document.body;
altura = elemento.offsetHeight;
var fondo = "URL(../scripts/gradientesV.php?altura=";
fondo += altura + "&color1=" + color1 + "&color2=" + color2 + ")";
elemento.style.backgroundImage = fondo;
elemento.style.backgroundPosition = "top";
elemento.style.backgroundRepeat = "repeat-x";
}
</script>
Un apunte que no he considerado es que habría que llamar a este script también en el redimensionado:
(<body onresize ...>)
Saludos