Hai ragione riguardo l'uso dell'absolute, mi sono riletto meglio la guida qui su html.it
absolute posiziona rispetto all'elemento ancestor diverso da static, relative invece solo rispetto all'elemento contenitore

Per quello che devo fare io è meglio l'uso di absolute (un elemento contenitore posizionato al centro, il corpo della pagina, e tutti gli altri elementi posizionati rispetto all'elemento contenitore).
Seguendo questo ragionamento ho cercato di posizionare l'elemento contenitore (divpagina) centralmente rispetto a body.
Quindi avrei dovuto usare body static e divpagina absolute. Tutti gli altri elementi avrebbero fatto riferimento a divpagina, in quanto primo elemento ancestor diverso da static.
Tuttavia se uso absolute e non relative (che poi sono stato costretto ad utilizzare), vedo il corpo della pagina a destra dello schermo , e compare addirittura la barra di scorrimento orizzontale.
Prova ad utilizzare questo codice sostituendo la position relative di divpagina con absolute... perché accade tutto questo? Non ha senso rispetto a quello che ho letto... e che penso mi volevi suggerire e far capire!
Grazie

body {
position: static;

background: silver; padding:0px; border: 0px; margin: 0px;text-align: center;

}
#divpagina {
position:relative;
top: auto; left: auto;
width: 680px; height: 550px;
background-image: url(SfondoHome23.jpg); background-repeat: no-repeat; background-position: top center;
padding-left:0px; padding-right: 0px;
border-left: 0px; border-right:0px;
margin-left: auto; margin-right: auto;



}
#divtitolo {
position: relative;
background-image: url(titolo.jpg); background-repeat: no-repeat; height: 108px; width: 680;
z-index: 1;

}
#div0 { position: absolute;
background: url(fogliarossa.gif); background-repeat: no-repeat; background-position: center left;
padding-left: 70px; whith: 200px; height : 25px;
top: 130px;
left: 475px;
font size:18px;
z-index: 30;
}