Crear varias páginas web en un mismo documento html


La idea es muy sencilla a la par que imposible. No se si lo que pido se puede hacer, imagino que no pero por preguntar que no falte. Veamos mi idea es la siguiente …

Me gustaría crear una página web con sus secciones; sobre mi, galería, código, contacto, etc. pero la cosa es que solo quiero crear un único documento html, la razón de querer hacer esto no la se ni yo pero me surgió la duda y me puse a pensar en como hacerlo todo en un mismo documento. Como al cabo de los días no se me ocurría nada he decidido preguntar ¿Como crear varias páginas web en un mismo documento html? Lo único que se me ha ocurrido es hacer que se muestre la homepage y cuando navegamos se modifique el css para ocultar el contenido de la homepage y mostrar el contenido de la de contacto, por ejemplo, pero la cuestión es que no se como hacer esto o si hay alguna formas mas efectiva de hacer lo que yo quiero.

Me gustaría que el documento fuera algo asi …

<!DOCTYPE html> <html lang="es">     <head>         <title> titulo de la web </title>         <link rel="shortcut icon" type="image/x-icon" href="favicon.ico">         <meta name="author" content="andresbarrones">         <meta name="description" content="">         <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">                 <style>                         @import url('https://fonts.googleapis.com/css?family=Comfortaa');                          * {                                 padding: 0px;                                 margin: 0px;                         }                         body {                                 font-size: 18px;                         }                         #homepage {                          }                 </style>     </head>         <body>                 <div id="homepage">                         Contenido HOMEPAGE                         </div>                  <div id="sobremi">                        Contenido Sobre Mi                       </div>                  <div id="contacto">                         Contenido Contacto                      </div>     </body> </html> 

Bueno creo que eso es todo lo que puedo decir.

Muchas gracias a tod@s de antemano.