The Fundamental Guide to HTML, CSS and Javascript
HTML, CSS and Javascript are three technologies that make up the majority of websites. Without them the World Wide Web as we know it wouldn’t exist. So what are they and how do they work?
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 <b> </b> 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.
Another thing that website creators felt that they needed was a method by which they could change the content of a web page after it had been loaded by the web browser. For this, Netscape created JavaScript, which despite the name similarities has no relationship to the programming language Java. While other browsers attempted to bring in their own scripting languages, JavaScript was standardized by the European Computer Manufacturers Association as the scripting language to be used on the world wide web. The standardized version was called ECMAscript which is the reference that is used for creating modern JavaScript engines in web browsers.
JavaScript is an untyped, dynamic, interpreted programming language that can be placed within special script HTML tags. When the web browser sees the script tags in the HTML it then interprets the text within as code to be executed. All modern web browsers include their own JavaScript interpreters to execute the code.
All web pages need HTML to display properly, but both CSS and Javascript are optional elements that can be used to improve on a simple HTML web page. Both can be either included in the same file as the HTML or can be kept in their own separate files that the HTML loads when the page is loaded. The beauty of these technologies is that as they consist of files in plain text there is a very low barrier to entry when creating websites, a simple text editor like notepad and a web browser are all that is required to get started.