I list below all topic groups, which I have done according to subjects, which they handle. You can return to this topic group by using this menu and the link Table of topic groups on the top of the each page.

Document types

The history of HTML doesn't know at all HTML 1.0, because first internet document don't have an official specification or a DTD (Document Type Definition) file. Indeed Dan Connolly made a DTD for HTML in 1992 HTML-documents from the year 1992 are draft documents and I call these documents as pre-HTML. The element table to pre-HTML[S] base on elements, which are in the DTD of Dan and which are used in the directory, which handles first HTML documents. All version of HTML from the draft of Dan Connolly to HTML 4.01 base on SGML (S tandard Generalized M arkup Language).

W3C: DTD for HTML, HTML Home Page (a sub-directory).
Other sites: WDG: A Gentle Introduction to SGML.

First Internet documents have few elements and attributes to describe the structure of the document. In addition to structural elements, some elements were semantic (for example STRONG) and in the DTD of Dan was not at all presentational element, but in W3C has used B and I in the site, which handles first Internet documents (they can be understood also partial semantic). Fist Intenet documents didn't have images and font definitions, because documents should be platform independent:

It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.

The HTML 2.0 (1994-1996) has the first official document type definition file. It has even full (html.dtd) and strict (html-s.dtd) versions of DTD. It can be regarded as proper base on future versions of HTML. HTML 2.0 documents were still relatively simple, but they had the ability to use images. I have much pages, which element structure is in the BODY-part of the document almost like in HTML 2.0 documents.

W3C: DTD-files: HTML 2.0 full, HTML 2.0 strict.

Next widely used HTML version is HTML 3.2 has not a wide specification. This document type has only extensions to HTML 2.0 as we can see from the this cite:

HTML 3.2 adds widely deployed features such as tables, applets and text flow around images, while providing full backwards compatibility with the existing standard HTML 2.0.

HTML 3.2 (1996-1997) doesn't brought basic level new designing model. Indeed many authors have evaluated the document structure upon complex multilevel nested tables. In my mind this is misuse of tables and an artificial, unnatural "new designing model" after HTML 2.0. I have some pages, which are done at this way, because I don't thought designing very deeply. If table are not nested and the structure remains relative simple, the basic structure is reasonable build on tables. In strictly thought this is also misuse of table elements (they are originally intended to render tabular data, not be the base of the whole structure of the page). If we tolerate some level misuse of elements, HTML 3.2 brought an alternative structure and layout model after HTML 2.0 (HTML 3.2 is however not a really layout language).

HTML 3.2 was only an intermediate document type and intended only as a temporary solution, which should be replaced with a better designing model. This fact can be seen studying the HTML 3.0 Draft from 1995. The draft base on the work of Dave Raggett from 1993. HTML 3.0 has many attributes, which are neither in HTML 2.0 nor in HTML 3.2, but which are core and internationalization attributes in HTML 4.01 and XHTML 1.0.

W3C: DTD-files: HTML 3.0 Draft.

According to the draft, the presentation could be done with style sheets. In HTML 3.0 the original idea to use style sheets was a light version of DSSSL (Document S tyle S emantics and S pecification Language, but this aim never fulfilled. DSSSL might be today in practise a theoretical solution (the HTML 3.0 Draft reserved also the possibility to use some other style sheet language). CSS replaced DSSSL in HTML documents. Even if CSS1 ([S]) released 17 December 1996, HTML 3.2 just reserved the element STYLE in order to use in the future as a placeholder for style info. Browsers designers were not ready to use widely CSS, which means that the usage of HTML 3.2 almost totally destroyed the original idea of HTML, because it added much presentational elements and attributes!


The HTML 3.0 Draft had much future oriented proposals: supporting of style sheets (including printed media), mathematical markup, internationalization, fixed banners (without frames) and footnotes. Some of the features are supported in the next major version of HTML, but not all. HTML 3.0 Draft just rejected even if it was a fine proposal. HTML 3.2 is not an official version of the HTML 3.0 Draft - it is far from it! HTML 3.2 is rather a bad replacement of the HTML 3.0 Draft.

Compared to HTML 3.2 the HTML 4.0 (published on 18 December 1997 and revised 24 April 1998; Last changes are made in 1999, when became the version 4.01) brought a new designing model, which base on separate the presentation from the content of the document. HTML 4.0 continued some of the main aims of the HTML 3.0 Draft and it can be regarded the descendant of the HTML 3.0 Draft rather than the HTML 3.2.

The XHTML 1.0 (2000) is the XML 1.0 (Extensible M arkup Language) version of HTML 4.01. XHTML 1.0 is today the recommendation of W3C and for example this page is a XHTML 1.0 document. HTML 4.01 and XHTML 1.0 have following common important main aims:

W3C: Access for People with Disabilities, Cascading Style sheets, HTML 4.0, Internationalization, XHTML 1.0, XML 1.0.

Compared to the HTML 3.0 Draft, the usage of style sheets has been evaluated further, because in principle HTML 4.0 and XHTML 1.0 don't need those presentational attributes, which are in the HTML 3.0 Draft. To set the text direction and to support certain special medias (especially aural and tactile medias) are new compared to the HTML 3.0 Draft. HTML 3.0 Draft had however the idea of different medias, because DSSSL was intended to give alternative rendering to printers. The tactile and aural medias are just extensions of the media principle. HTML 4.01 and XHTML 1.0 don't fulfil the mathematical markup and some other features of the HTML 3.0 Draft.

The HTML 4.01 and XHTML 1.0 have two main document types, Strict and Transitional with associated DTD-files, strict.dtd and loose.dtd or transitional.dtd (XHTML).

Strict document types don't include certain presentational elements and attributes, because the presentation should be defined primary with CSS (in addition they don't include some non-presentational attributes and elements). These document types are not however really worth of the name strict. They are rather compromises between transitional types and the strict principle to express the presentation only with CSS. Strict document types have for example B and I elements and some presentational attributes to table elements. If they would have been really strict, they would not include them.

The transitional document types of HTML 4.01 and XHTML 1.0 have all elements, which belongs to HTML 3.2 except some obsolete elements.

HTML 4.01 and XHTML 1.0 have also a DTD-file for framesets (frameset.dtd), but it is not full DTD-file, because elements are listed comprehensive in the transitional DTD-file. Framesets can be understand as a sub-document type of the transitional document type.

The advance of XHTML 1.0 compared to HTML 4.01 is the fact that it gives the possibility of transformations between other XML-based languages. At this mean XHTML 1.0 brought a new designing model.

The XHTML 1.1 is a working draft. XHTML 1.1 base on the Modularization of XHTML™, which means diving the specification into smaller modules (the modularization is a framework to other XHTML version too, not only to the XHTML 1.1). XHTML 1.1 will have one basic document type and additional modules, which can be used, if necessary. The Internationalization principle is developed further.

In principle XHTML 1.1 gives the possibility to finish the main aims of the HTML 3.0 Draft, which included a proposal to support large quantity of mathematical elements. SUB and SUP are in the draft some of them. XML has the MathML 1.01 (Mathematical M arkup Language) specification. If that language is used with an additional namespace or module with XHTML, main aims of the HTML 3.0 Draft are fulfilled.

W3C: MathML 1.01, Modularization of XHTML™, XHTML 1.1.

I made a "Tour"[S] from HTML 1.0 to XHTML 1.1.