The 'non-compliant' systems is an interesting turn of events.
For many years, web designers have had to put stuff in HTML/CSS to adapt to Microsoft's strange 'extensions' or quirks as compared to other browsers (Netscape, Opera, Firefox, etc), so much JavaScript and conditional CSS/HTML code has been written to
1) See if a IE browser is being used and
2) if so, do something different that that required by the other browsers.
Now, with IE8 it has two modes:
1) the IE8 'standards' mode and
2) the IE7 'compatibility' mode.
The 'standards' mode just makes IE (finally) behave like the other browsers (while indicating it's an IE browser), while the 'compatibility' mode just makes it render as IE always has (which makes the unchanged JavaScripts work without mods).
Unfortunately, IE is still required to run Microsoft/Windows Update functions (since they still use ActiveX as part of the process -- a M$ feature mostly unsupported by other browsers).
In short, their convergence to what is 'standard' with other browsers causes webmasters to add new detection to their HTML/CSS/JavaScript to undo the IE-specific accomodations/hacks formerly needed to have IE render pages the same as the other browsers.
I too am a FireFox aficionado -- I only use IE for testing and Microsoft Update (because it's still required).
Best regards,
Ken