Anyone with even a sprinkling of experience in cross browser compatibility will say that fully supporting Internet Explorer can be a strange science in the best of times and simply maddening in the worst of times. It’s tempting to blame this on IE’s buggy nature(IE 1.0 was riddled with bugs), but IE’s incompatibility with CSS might have been a result of being the first commercial browser to support CSS.
At the time, CSS1’s featured had not been fully standardized by W3C. This meant that Microsoft’s Lead Engineer, Chris Wilson and the developers under his stewardship had to blindly pick and choose features they considered important to support. Those included basic properties like background, color, text, and, font. The box model was something that, perhaps, Microsoft didn’t consider important to implement and test. The poor implementation of the box model and many other limitations caused W3C, after officially standardizing CSS1, to issue a notice that instructed IE to fix ten major issues:
The 1998 blog written by the WaSP is now archived. It’s worthy of a read just to see how far CSS has come and to really appreciate how hard front end developers had it back then. IE’s poor start with CSS support on Windows held it back as it would always have to play catch up whereas Opera thoroughly tested its CSS implementation, and, as a result, had almost full support for CSS from the start. Håkon Wium Lie, the co-author of CSS, was so impressed with the browser that he joined the company. Years later, we got Firefox and Chrome, two more browsers that correctly implemented CSS.
So, we’re left with IE, a browser whose many versions are still used today, a browser whose backwards compatibility reveal a trail of bugs and CSS hacks–all because IE’s dev team didn’t understand CSS from the outset.
Much of the material in this article was sourced from W3C’s “A Brief History of CSS Until 2016.”
Archived article: https://archive.webstandards.org/css/winie/