Ciao, come ti hanno già indicato si tratta più che altro di JavaScript. Il semplice effetto fade-in può essere fatto in CSS ma per la gestione dell'evento scroll e per il caricamento on the fly dei contenuti bisogna utilizzare rispettivamente JavaScript e AJAX.

Un effetto simile lo si trova in genere nei siti di tipo one-page. Prova magari a fare qualche ricerca in questo senso.

Nel mentre sposto la discussione sul forum JavaScript.
Buon proseguimento.