Suppose the server sends a css file with the following headers:
HTTP/1.1 200 OK
Connection: Keep-Alive
Content-Length: 38676
Content-Type: text/css
Date: Thu, 20 Dec 2012 15:35:22 GMT
Last-Modified: Tue, 11 Dec 2012 19:00:36 GMT
There's no information about when the document is about to expire, no etag and no information about cache control. I have noticed that all major browsers will cache the file and on subsequent page views they will not request the file again (the exception is Chrome which occassionally checks for the file freshness, which results in 304 response).

But how long such requests are supposed to be cached? One of my hosting servers uses headers like above and I notice the files are cached for at least several hours but I don't really know how long.