In terms of CSS history, Cascading Style Sheets were first proposed by Håkon Wium Lie in 1994 whilst working at CERN with Tim Berners-Lee. At the time, the World had already given birth to the internet, and this new medium was rapidly being used to present information electronically. The motivation for CSS was simple, to provide a means to style information being presented (which at the time was entirely lacking), and to separate the process of styling from that of content creation — a now obvious progression coming from an era of what was previously dominated by primitive tools such as dial-up bulletin-board systems (BBS’s). In something akin to ‘VHS’ vs ‘Beta’, CCS seemed to take precedence over other style languages being considered, particularly after the first W3C CSS Recommendation (CSS1) being released in 1996.

At around that time, CSS was not the only style language being developed. As is summated HERE, there was for example DSSSL, however CSS ended up being preferred since it took on a ‘cascading’ nature (as the name suggests) which had the advantage of influencing the document according to the wishes of the author, the reader, or indeed the device that was responsible for rendering the document. Incidentally, this feature was the principle subject of much subsequent dialogue, where debates took place to decide on which party was ultimately responsible for how a document should be rendered. All of the above was happening around late 1994, and the the HTML Editorial Review Board (ERB) was set up by the W3C in late 1995 to make HTML specifications and standards.

It took a number of years for browsers to implement CSS, however, in 1996 Microsoft IE was the first, followed by Netscape, who was also somewhat sitting on the fence by implementing a JS-type competitor (since depreciated), still, to this day browsers render CSS slightly different between each other, a consideration which is at the forefront of modern web developers.

Summary of Key Milestones:

Since the above foundations, there have been three (3) main milestones (Ref: HERE) of the evolution of CSS, listed as follows in terms of the principle features:

  1. CSS Level 1 (Dec 1996) –
    1. Font properties,
    2. Text attributes
    3. Alignment of text, tables, images and more
    4. Colours of text and backgrounds,
    5. Spacing of words, letters and lines,
    6. Margins, borders, padding and positioning, and
    7. Unique identification and classification of groups of attributes.
  2. CSS Level 2 (May 1998)
    1. z-index,
    2. Media types
    3. Bidirectional text
    4. Absolute, relative and fixed positioning
    5. Support for aural style sheets.
  3. CSS Level 3 (2011/2012)
    1. Introduction of Modules, namely:
      1. Color
      2. Selectors level 3,
      3. Namespaces and
      4. Media queries.

The Schematic of the evolution of CSS from 1 to 3 has been included below (ref HERE)

Schematic of the Evolution of CSS

CSS History, A Brief Overview

by Michael Gannon time to read: 2 min