Early web design suffered at least two acute problems: it was difficult to assemble and maintain web sites with a unified theme; and the HTML code itself had so much formatting in it as to be unreadable, and to make it difficult for search engines and other programs to identify the content.
In early web development the only tool available was HTML. There were a number of HTML editors that could assist a person in writing code for web pages, but there was no means for enforcing uniformity of appearance in the pages for an entire site. If a developer needed to change the appearance of a site, she needed to go through and change every single page in the site - a tedious and time-consuming process.
A number of approaches were made to address this problem. The Netscape browser implemented support for getgloss('frames','frames'); ?>, individual pages that could be displayed in a single browser window. These allowed the construction of sites with a single navigation page e.g. at the left side, a single header page, and/or a single footer. It was an elegant idea, but still did not address the questions of colors, fonts, and page design. In a different way, products like Macromedia Dreamweaver and MS Front Page attempted to handle the design elements of a page for the developer, allowing her to change a template and see the change implemented through an entire site. Still, these products created pages with spectacularly inefficient and cumbersome code.
The getgloss('w3c','W3C'); ?> chose to address the problem, and that of getgloss('structural','structural markup'); ?> versus getgloss('procedural','procedural markup'); ?> in a more intelligent way. Cascading Style Sheets took much of the formatting out of the HTML itself and put it into a style sheet, which could be centralized for a given site, and referenced by all pages in that site for their appearance attributes. This accomplished two things:
For a more detailed discussion of the history of style sheets, visit the W3C history page.. That page is rather old (1999), so it does not note that the Netscape browser is now defunct, or that in modern times all browsers support CSS very well. On the other hand, it is impossible to overlook the observation that CSS was like all W3C standards in that it was opposed by the dominant browser of the time. When a browser dominates the market its owners tend to want to write the standards themselves. Thus, when Netscape was the dominant browser, the company dragged its feet in implementing CSS, while Microsoft jumped on the bandwagon early. By contrast, in the 21st century Internet Explorer has been the dominant browser. The result has been that Microsoft has been very slow in implementing SVG, MathML, and other W3C standards in its browser, while Mozilla/Firefox has always been an early adopter.