Allora, senza addentrarmi in spiegazioni super-tecniche posso trovare una spiegazione logica a questo comportamento ma prima c'è bisogno di una piccola spiegazione a monte:
Dovete sapere che una pagina web non è un blocco unico che "viene giù" tutto insieme, ma è un semplice file di testo (provate ad aprire un file .htm o .html col blocco note e lo vedrete da voi) in cui viene detto al programma apposito (browser) cosa mostrare, in che punto e come, più ovviamente il testo puro e semplice, quello che si vuole che l'utente legga. Se si esclude questo ultimo, tutto il resto non è compreso con il file html che scarichiamo e va scaricato a parte, la maggior parte saranno dei file di immagine che possono anche stare in computer (server) diversi da quello in cui è memorizzato il file html che vogliamo visualizzare.
Proprio in virtù di questo la richiesta al server da parte del browser non è una sola; il tutto parte con una semplice richiesta (ci sono altre richieste a monte ma non hanno niente a che vedere con il problema in questione e quindi le salto):
1. Server di giardinaggio.it, mi fai scaricare la pagina tacasblodro.html?
La risposta sarà:
2. Eccola: 11100010010011100110 (simulazione di codice binario
)
Il browser la mostrerà e nel frattempo interpreterà il testo che "vede"; facendo questo saprà cosa deve mostrare di componente esterno ed allora partirà una richiesta al server apposito per OGNI altro elemento da visualizzare (la maggior parte contemporaneamente):
3. Server di giardinaggio.it, mi fai scaricare l'immagine dell'omino con il pollice verde?
4. Server di giardinaggio.it, mi fai scaricare il file con i banner pubblicitari?
5. Server di imageshack.us, mi fai scaricare l'immagine miononnoincarriola.jpg?
e così via. Queste richieste possono anche essere TANTE, ma proprio tante ed è per questo che voi vedrete prima il testo (a volte un po' alla volta se la connessione è lenta), poi piano piano arriveranno anche le immagini un po' alla volta.
Supponiamo ora che qualcosa non arrivi, tipo l'omino con il pollice verde: se nel file html di partenza non è specificata l'altezza che quella immagine deve avere e la posizione all'interno della pagina allora non vedrete uno spazio bianco ma sembrerà che il forum inizi molto più in alto e che l'immagine non ci sia più. Supponiamo poi che, con molta lentezza, arrivi anche l'immagine prima che la richiesta sia scaduta (le richieste sono a tempo perchè altrimenti tempo 10 minuti e internet sarebbe impallato su richieste che si perdono o il cui file non si riesce a caricare) allora vedrete che la pagina si allungherà e comparirà anche l'omino (probabilmente vi sembrerà che la pagina si sia spostata da sola ed in un certo senso è proprio così).
Ora, quelle pagine sono formate da diversi "componenti" probabilmente gestiti da files a parte che, quindi, vanno scaricati a parte e la cui esistenza il browser la impara solo dopo che è arrivata la pagina che li contiene e così arrivano uno per uno (anche se a volte ci sembra che arrivino contemporaneamente) DOPO che il contenitore è stato caricato. Questo è il motivo per cui a volte sembra che le parti della pagina siano fuori posto, semplicemente perchè quelle parti sono arrivate prima delle altre; se il tutto non si blocca vedrete i componenti andare "magicamente" a posto un po' per volta.
Inoltre (e poi la pianto, lo giuro) spesso le pagine contenitore non sono altro che una lista di componenti praticamente alla rinfusa, sarà un file a parte chiamato foglio di stile o CSS (il quale viene richiamato esplicitamente all'inizio della pagina contenitore) che avrà le informazioni sul come disporre i vari componenti. Se fallisce o è semplicemente rallentato lo scaricamento di detto file i componenti inizieranno a comparire alla rinfusa (nell'ordine in cui sono richiamati dalla pagina contenitore) salvo poi mettersi a posto da soli mano a mano che questo file CSS arriva.
Se restavano nel posto sbagliato, poteva darsi che lo scaricamento dei componenti mancanti o del CSS, se questo forum ne usa, si fosse interrotto e che il browser credesse che tutto fosse nel posto giusto.
Poi magari non è questo il motivo e si vedevano male perchè qualcuno ci stava pacioccando sopra o per errori nella rete ma questa è la spiegazione che mi è venuta in mente.