I just set up a node.js app recently because it does chunking by default. I noticed Chrome didn't want to render the early chunks. I believe some folks mention that some browsers will only render the chunks if a large enough buffer of chunks come down. But Firefox gladly rendered the early chunks. It's easy enough to setup a response.write("Hello") setTimeout response.end("World") in node to see the chunk rendering in different browsers.
This is sometimes handled at a level lower than than the browser (in the socket APIs browsers are built on). Two or three years ago, anyway, when I was last working on this stuff, the buffer amount in Safari for example depended on OS and OS version. The solution is to just throw half a kilobyte of nothing down the wire before starting to send chunks.