I have more trouble personally with Firefox doing this. As for the real issue (now that it's open), server settings are likely to blame. Check for expires tags, Etags, etc., etc., in the headers being served by your WWW server(s). As Dero alludes to, we have ours set to allow caching of JS, CSS, and image files for one year. If we change anything JS/CSS wise, we then alter our HTML headers to add a unique query string to the resource(s), which causes all the end-user UA's to refetch them. Our email editors have to do this too whenever an image changes (like when the new magazine cover comes out the 1st of each month).
Some of our newer projects, we have a TS in the config file:
//config.php
$css_ts = "123456";
Then the headers don't have to be changed, just the config file:
//header.php
<link rel='stylesheet' type='text/css' src='/css/styles.css?<?php echo $css_ts; ?>'>