Words such as "must", "should", "can", and "may" are used in accordance with [RFC2119].
User agent A user agent is any device that interprets HTML documents. User agents include visual browsers (ascii and graphical), non-visual browsers (audio, braille), search robots, proxies, etc.
Conforming user agent A conforming user agent for HTML 4.0 is one that observes the mandatory conditions set forth in this specification.
A user agent must try to render the content of any element it does not recognize.
A user agent must ignore any attribute it does not recognize.
A user agent should avoid imposing arbitrary length limits on string literals.
This specification does not define how conforming user agents should handle general error conditions.
Deprecated A deprecated element or attribute is one that has been outdated by newer HTML constructs. Deprecated elements are defined in the reference manual in appropriate locations, but are clearly marked as deprecated. Deprecated elements may become obsolete in future versions of HTML.
We strongly urge authors to avoid deprecated elements and attributes. To this end, we provide alternatives to them when appropriate in the specification.
User agents should continue to support deprecated elements for reasons of backward compatibility.
Obsolete An obsolete element or attribute is one for which there is no guarantee of support by a user agent. Obsolete elements are no longer defined in the specification, but are listed for historical purpose in the changes section of the reference manual.
This specification presents elements in a "semantic" order, from most basic to most sophisticated constructs. Elements may be discussed in several different contexts depending on their use (e.g., DIV as a structuring element and DIV and its role with style sheets). Despite scattered references, the specification defines each element and attribute in one location only.
Similarly, attributes that apply to many elements (e.g., lang, dir, class, etc.) are defined where most appropriate semantically. Consequently, an element definition may include a reference to an attribute that may be defined elsewhere. When this is the case, the location of the definition will be clearly indicated and for the electronic version of the specification, accessible by a link.
Definitions of elements and attributes clearly indicate which are deprecated. In such cases, the specification includes examples of better HTML usage.
In the electronic version of the specification, all references to an element or attribute (from the index or in the specification text) are linked to its definition.
Element names are written in upper case letters (e.g., BODY). Attribute names are written in lower case letters (e.g., lang, onsubmit). Recall that in HTML, element and attribute names are case-insensitive. Our convention is designed to encourage readability of the specification.
Element and attribute names are marked within the source HTML for the specification and may be rendered specially depending on your user agent.
The type of an attribute's value is specified in its definition. However, if the set of possible values is small, the values are listed explicitly, separated by a bar (|). The first value in this list is the default value.
Informative notes will be emphasized to stand out from surrounding text. How the emphasis is rendered depends on your user agent.
An example that illustrates deprecated usage will be marked as a "DEPRECATED EXAMPLE". Deprecated examples also include recommended alternate solutions. An example that illustrates illegal usage will be clearly marked as an "ILLEGAL EXAMPLE".
Examples and notes are marked within the source HTML for the specification and may be rendered specially depending on your user agent.
By convention, HTML files are usually given the extension ".html" or ".htm".
Comments appearing in the HTML 4.0 DTD have no normative value; they are informative only.