After knowing how the HTML Standard and compliance on HT (Hyper Text) and Markup, let us get more understand on tag wars, xhtml and etc.
In the early days of the Web, HTML proved to be an extremely popular authoring language. With HTML, publishing content to the Web was easy – you inserted some tags into a document using a text editor and uploaded the document to a web site, where it could be read by anybody with a browser. However, this very simplicity was a drawback, because the people who were actually developing web browsers wanted to include exciting new features that were not supported by early versions of HTML. So these developers decided to create their own tags, which could only be interpreted properly by their browsers. This threatened to lead to a situation where the type of web page you could visit would depend on the browser you were using. Clearly what was needed was an agreed HTML standard.
The W3C to the rescue
The need for a body to develop common standards for the Web led to the formation, by Tim Berners-Lee in 1994, of the World Wide Web Consortium (W3C). A specification that has been approved by members of the W3C and is appropriate for widespread use is published as a recommendation document.
One of the most important initial tasks for the W3C was to develop a standard for HTML, and in 1995 this body was busily working on HTML 3.0, a badly needed update for the two previous versions – HTML 1.0 and HTML 2.0. However, the draft specification for HTML 3.0 included many new tags, most of which were not, and would not, be supported by browsers available at the time. So the W3C changed tack – instead of attempting to cram in lots of new features, it focused on what was currently supported. HTML 3.0 was abandoned and, in 1996, the W3C published its recommendation for HTML 3.2, which represented the consensus on HTML at that time.
The next recommendation after HTML 3.2 described the widely used HTML 4.0, released in 1997, and was followed in 1999 by a recommendation for HTML 4.01.
The latest recommendation – XHTML 1.0
XHTML 1.0 is W3C’s recommendation for the latest version of HTML. XHTML 1.0 is a hybrid of XML – another, more powerful markup language called the Extensible Markup Language – and HTML 4.01. XHTML 1.0 is specified in three “flavors”:
- XHTML 1.0 Transitional – if you are a developer creating web pages for the general public, you should use this “flavor” because it allows you to take advantage of XHTML features such as Cascading Style Sheets, and you only have to make small changes to your documents to accommodate users viewing your pages with older browsers that don’t support XHTML
- XHTML 1.0 Strict – this is used when you want your document to be free of any tags associated with the layout of text
- XHTML 1.0 Frameset – this is useful when you want to use HTML Frames to partition the browser window into two or more frames
Watch out for old tags
If you read the documentation for XHTML 1.0, you will see that some tags and attributes are deprecated – which means that, although they are supported in XHTML 1.0, they may not be supported in future versions. As a result, you are strongly urged not to use the deprecated tags and attributes on the list provided by the W3C.
However, one of the difficulties is that some browsers may not support the tag that replaces a deprecated one. For example, in XHTML 1.0, the <applet> tag is deprecated in favor of <object>, but recent versions of Netscape Navigator do not support <object>. In this case, you may be forced to use <applet>, even though it is not recommended.
Return of the tag wars – proprietary extensions
You might think that with the release of XHTML 1.0, everybody is happy – that all web site developers adhere to this specification when creating web pages and all browsers provide full support for this code. Nothing is ever this neat, however, and browser developers have included features that are not part of the current recommendation. These features are called proprietary extensions, because they supposedly “extend” the existing standard, although in most cases it’s possible to adhere to the current recommendation and develop the features that these extensions offer.
Two (in)famous proprietary extensions are the <marquee> and <blink> tags. Neither is part of XHTML 1.0, and in any case both are browser-specific – the <marquee> tag is supported by Internet Explorer but not by Netscape Navigator, and the <blink> tag is supported by Netscape Navigator but not Internet Explorer. For these and other reasons, such extensions should be avoided.
Stick to the recommendation and check your code
When creating web pages, it’s always a good idea to conform to the latest recommendation from the W3C, who will even check any code you send them to see if it is valid. And you should test any pages you develop with several browsers and older versions of these browsers.