an informative overview of the three major “front-end” technologies that power everything from Facebook to your favorite blog. –john
First lets look at HTML, or to give it it’s full name, HyperText Markup Lanquage. The creation of HTML is traced back to some documents written by Tim Berners-Lee, a physicist at CERN,who proposed HTML as a way of marking up plain text documents to give them both format and allow them to provide links to other documents. He envisioned a web of documents all linking between each other allowing a user to move between them and take in the information provided within. Tim Berners-Lee released both his HTML specification and an early web browser in 1993, and in 1995 the Internet Engineering Task Force published the HTML 2.0 specification as a standard to be used going forward.
So how does HTML work? It consists of tags which are normally placed inside angle brackets. Some tags are stand alone, others work as pairs with opening and closing tags required. A nice example tag would be the tag pair, which makes any text between the two tags bold. Tags have specific names that define their function and different tags may also accept a number of additional options that can change what they do.
It soon became apparent that as well as providing markup for the text the tags could be used to provide style (such as changing colours, fonts, etc), maintaining all of these tags in a large file could become a difficult process. CSS, or Cascading Style Sheets, were proposed as a way of resolving this problem. The aim of CSS was to provide a place where many of the additional options that could be assigned to an HTML tag could be defined in a single place rather than needing defining with each individual tag. For example, let’s assume you wanted all of the link text in your web page colored red and bold. Before CSS you’d need to define each of the anchor tags, which performed the task of creating the links, alongside a font tag, which performed the task of changing the text’s appearance. This made the HTML files long and awkward. CSS provided a mechanism whereby in a single place you could state that text inside an anchor tag should be colored red and made bold, meaning that now only the anchor tag was required. Another advantage was that should you want to change the appearance of the web page’s links later, you only needed to change one place in your file.