One can also study ipfs project websites (ipfs.io, dist.ipfs.io and so on).
Those are just static bunches of files (html and resources) hosted in ipfs and served with a standard ipfs gateway (located on gateway.ipfs.io address). Gateway just looks up _dnslink TXT records for corresponding domains, and serves files from the ipfs hash address specified there.
Under the hood those pages will be standalone ipfs Duke nodes with separate hash addresses, and your root folder will be actually a set of pointers to those hash addresses — but you don't need to keep that in mind when uploading a site.