As I know, when browser downloading uncompressed index.html
it starts parsing and rendering it from stream. So you can see a part of a content even if you didn't receive the whole file.
The question: Will the browser work with compressed in gzip
format html page as well as with plain html page? Or should it get the whole file, decompress it and then render?
No. They can and do start decompressing immediately upon receipt of the first parcel of compressed data. At most a tens of bytes of compressed data at the end of the parcel is not decompressible until the next parcel arrives, and then only if you happen to be in a dynamic block header. Most of the time you are in the middle of a block, in which case only a few bits are not decompressible until you get the next parcel.