It was because IE had a HORRENDOUSLY SLOW development cycle with minimal resources committed. It was impossible to get all of those issues fixed in a timely manner. If they can be fixed within a few months, it won't be 5+ years of entrenching people in egregious bugs before a new version comes out that breaks all of those if/elses in everyone's code.
We develop ONLY for Chrome. It (and WebKit especially) has bugs, too, and we report them regularly. But the development cycle is rapid enough that we can put a TODO in the code, file a bug against it, and a few months later we actually get to fix the code because, oh my gosh, it's fixed on Chrome stable.
I doubt that Chrome/WebKit will stagnate if it becomes the de facto standard but I'd rather it didn't have the chance and I'm constantly amazed that so many comments on HN seem desperate for one browser to rule them all.
It was also closed source, so nobody who found a bug could just go fix it. You had to ask Microsoft, nay beg Microsoft, to fix it for you. And they didn't.
These effects compound one another. The result is that MAJOR bugs become features.
How do you think it got from IE1.0 in August 1995 to IE6 in October 2001? (That included the IE5.5 release as well.)
That rate of development with the resources Microsoft had to get the best developers available is really unacceptable.
The IE team produced 7 versions in six years and there were some very substantial advances, including a new layout engine (Trident). They also did Mac and Unix versions, a mobile version, and a tabbed version for MSN (before iE had tabs).
IE certainly developed a lot faster than anything else on the market in the 1990s, bearing in mind that Netscape took three years to get from 4.7 to 4.8.
Safari entered the market late (2003) and still took the best part of seven years to make it to version 4.
Nobody shipped major versions "yearly".
So we are forced to hack web sites to make it work in the majority of WebKit based browsers out there in the field.