For those who have the same problem, here is the root of the problem from MS Support ( http://support.microsoft.com/kb/262161 ):
This problem occurs because in Internet Explorer: all style tags after the first 31 style tags are not applied. All style rules after the first 4095 rules do not apply. On pages that use the @import rule to continuously import, external style sheets that import other style sheets, style sheets that contain more than three levels, are ignored.
ARRRRRRRRRRRRRRRR !!! Killed a couple of days trying to track down a problem with my code when it again was not complying with MS standards! # @) (@ #)
This led me to further research, and to my surprise, IE6 and IE7 seem to only process the first 2025 lines in a large css file - the rest is ignored. (at first I thought it was a limit on the number of lines, but it turned out that it was 4095 rules, which were on 2025 lines). It just seems stupid. The new IE and Chrome, Safari, Opera and FF do not seem to have problems with this. I ended up breaking my css into application-1.css and application-2.css to keep the number of files in produciton to a minimum, but this is still very annoying.
source share