I assume that since you are not mentioning this, does javascript aggregation work?
Drupal CSS aggregation does not parse CSS (now), it just executes some regular expressions before combining files, so it can break if it encounters valid but unusually formatted CSS, or trivially incorrect CSS syntax that you would never have noticed otherwise.
Check out any custom CSS that you made for any CSS bugs or quirks (something unusual), as well as any non-body modules or themes that the CSS buggies might have.
To give you an idea, some of the things that caused the problems include
It might also be worth checking that the file encodings are consistent. In particular, there is one well-known source of strange results in the aggregation of feeds and UTF8 byte-marker (BOM) files that may erroneously leak into files. Here's a command that removes the entire specification from all files in a directory (use with caution!).
If JS aggregation does not work either , it is almost certainly a problem with the server or directory - check the permissions of the file files, check for the appropriate compression libraries and everything that Duncan mentions.
If nothing works, you can try the agrcache module or the Core Library module . They modify the methods used by aggregation, and may give different results or clues regarding the problem. And watch out for aggregation issues for Drupal 7 as well as Drupal 8 - there may be problems in the problems that people are working on.
source share