Technical FAQ
PHP Manual
CSS2 Manual
HTML Manual
JS Guide
JS Reference
PhpDock Manual
Nu-Coder Manual
PhpExpress Manual
PHP Joomla
Learn PHP
<Character entity references in HTML 4Appendix B. Performance, Implementation and Design Notes>
^ContentsLast updated: Thu, 17 Aug 2006

Appendix A: Changes

A.1 Changes between 24 April 1998 HTML 4.0 and 24 December 1999 HTML 4.01 versions

This section describes how the 24 December 1999 version of the HTML 4.01 specification differs from the 24 April 1998 version of the HTML 4.0 specification.

A.1.1 Changes to the specification

General changes 

  • New style sheets for the document based on W3C technical report styles.
  • Added a short table of contents.
  • Updated the copyright.
  • Fixed document scripts to remove markup causing crashes on some browsers.
  • Thanks to Shane McCarron added to the acknowledgments.
  • In section 1.4, removed copyright details and refer to W3C site instead.
  • References to the document character set are all ISO 10646 (and one time to UNICODE to signal equivalence). References to UNICODE refer only to the bidirectionality algorithm.
  • Examples now use dated FPIs.


  • Section 3.2.2: Attribute values may contain colons and underscores as well.

HTML Document Representation 

  • The Document Character Set: [ISO10646] now used only for references to the document character set. [UNICODE] is reserved for bidi-related references.

Basic HTML data types 

  • Media descriptors: All characters in examples now described using hex notation (and reference to ISO 10646 rather than Unicode).

Global structure of an HTML document 

  • 7.2 HTML version information: Add a note about the HTML WG's commitment that
    • Any changes to future HTML 4 DTDs will not invalidate documents that conform to the DTDs of the present specification. The HTML Working Group reserves the right to correct known bugs.
    • Software conforming to the DTDs of the present specification may ignore features of future HTML 4 DTDs that it does not recognize.
  • 7.2 HTML version information: Use undated, HTML 4 URIs for system identifiers. These URIs are also used globally in all examples.
  • 7.4.4 Meta data: Removed note about ongoing work at W3C on meta data and replaced with a note about RDF.
  • Meta data: At the end of the section on HTTP headers, removed the auto-refresh example (since not part of the Recommendation) and added a note to use server-side redirects.

Language information and text direction 

  • The dir attribute: Clarification that dir applies to element content, attribute values, and table direction.


  • 11.2.6 Table Cells: The definitions of rowspan and colspan changed. Now spans are bounded by groups (rowgroups or colgroups).
  • 11.3.2 Table Cells: When "char=align" not supported by the user agent, behavior is undefined.


  • 12.2 The A element: The description of the type attribute for the A and (LINK) elements has been modified to emphasize its advisory nature.
  • 12.2.3 Anchors with the id attribute: It is legal for "name" and "id" to appear in the same start tag when they are both defined for an element. They must have identical values.
  • 12.3.3 Links and search engines: Removed reference to dir attribute in example since it doesn't apply to linked resources (only element content and attribute text values).
  • 12.4.1 Resolving relative URIs: Since RFC 2616 does not include a Link header field, the following statement is qualified for earlier versions of HTTP 1.1: "Link elements specified by HTTP headers are handled exactly as LINK elements that appear explicitly in a document."

Objects, Images, and Applets 

  • 13.2 The IMG element: Addition of the name attribute for backwards compatibility.
  • 13.2 The IMG element: Added a note that user agents must provide different mechanisms for accessing the "longdesc" URI (of IMG) and the "src" URI (of A) when an IMG is part of the content of an A element.
  • 13.3 The OBJECT element: Added a note that when the value of "type" for OBJECT and the Content-Type HTTP header differ, the latter takes precedence.
  • 13.3 The OBJECT element: Added a statement to use PARAM instead of the "data" and "classid" attributes for OBJECT together.
  • 13.4 The APPLET element: Added a note that, for security reasons only subdirectories are searched for the "codebase" attribute of APPLET.
  • 13.6.1 Client-side image maps: The definition of the "poly" attribute has been cleared up. There is a note that if not closed by authors, user agents should close the polygon for the "coords" attribute of AREA.
  • 13.6.1 Client-side image maps:
    • The content model of the MAP element now allows authors to mix AREA content and block-level content.
    • User agents "should" render block-level content (used to be "may").
    • The MAP element may be used without an image for general purpose navigation tools.
    • User agents must ignore AREA elements when content is mixed (AREA and block level).
    • Authors should specify geometries completely with either AREA elements, or A elements in block content, or both.
  • 13.7.2 and 13.7.3 : The vspace and hspace attribute definitions now look like the definitions of other attributes.
  • 13.7.2 and 13.7.3 : The type of vspace, hspace, and border attribute values was changed from "length" to "pixels".
  • 13.8 Alternate text: The last sentence of section now links to notes for user agent developers for handling empty "alt" attribute text.

Style Sheets in HTML Documents 


  • 16.4.1 NOFRAMES: Added text to the NOFRAMES description about rendering when (1) frames turned off (2) frames not supported.
  • 16.4.1 NOFRAMES: Added text about which DTDs may have NOFRAMES (frames, transitional).


  • 17.2.1 Control types: In the description of radio buttons, when no radio button is initially selected, user agent behavior for selecting one is undefined. This differs from RFC 1866.
  • 17.3 The FORM element: Addition of the name attribute for backwards compatibility.
  • 17.3 The FORM element: Removed the reference to the "mailto" URI in the "action" attribute definition.
  • 17.3 The FORM element: Removed "mailto" example near end of section since behavior not defined in this spec.
  • 17.3 The FORM element: The accept attribute is added to the DTD fragment. Also, the description of the accept-charset attribute is amended.
  • 17.4 The INPUT element: Added missing "ismap" for the INPUT element. Also, in definition of value., add "checkbox" to values of type that require a value.
  • 17.6.1: When no option is preselected, user agent behavior is undefined. Authors should supply and explicit none option to cover this case. This behavior differs from RFC 1866.

SGML Declaration 

  • SGML Declaration of HTML 4: Removed text about up-to-date references to ISO 10646. Replaced with: "Revisions of the HTML 4 specification may update the reference to ISO 10646 to include additional changes."

Strict DTD 

  • vspace/hspace/border attributes for IMG, OBJECT, APPLET in pixels.
  • Changed content model of MAP to ((%block;) | AREA)+
  • Added "ismap" attribute to INPUT
  • The accept attribute is added to the DTD fragment for the FORM element.
  • The axis attribute comment has been changed to refer to a comma-separated list.
  • The archive attribute for the OBJECT element takes a value of type CDATA instead of type %URI since the value is a space-separated list of URIs.


  • Notes Updated notes on accessibility to point to Web Content Accessibility Guidelines.


  • Updated links to RFCs to use http://www.ietf.org/rfc
  • Put links in titles.
  • Added revised date of 27 Aug 1998 for [DATETIME]
  • Added revised date of 11 Jan 1999 for [CSS1].
  • Publication date of [CSS2] fixed.
  • [UNICODE] has been updated to version 3.0
  • [ISO10646] has been updated to allow for new character assignments. Note that amendment five is specifically taken into account.
  • [RFC1766] expected to be updated.
  • [RFC2279] obsoletes [RFC2044].
  • [RFC2616] obsoletes [RFC2068].
  • [RFC2388] added in addition to [RFC1867].
  • [LEXHTML] address updated, date added.
  • [DCORE] address updated.
  • Updated [WEBSGML]
  • [HTML3STYLE] address updated.
  • Added [RDF10] (replaced old RDF)
  • Changed [WAIGUIDE] -> [WAI]
  • Added informative references [WCGL], [UAGL], and [ATGL]
  • Updated URI reference to [URI] (RFC 2396).

A.1.2 Errors that were corrected

Section 13.6.1
Image map examples using "poly" have been fixed to form a closed polygon. Also, the last pair of coordinates is the same as the first to close the polygon.
Section 14.4.1
In the final example, the STYLE element is missing the attribute assignment "media=screen, print".
Section 15.2.1
In the example with "mypar", the CSS rule should read
  P#mypar {font-style: italic; color: blue}

In CSS, "#" refers to an ID name while the "." refers to a class name. This example is dealing with the "id" attribute.

Section 16.2.2
Values for marginwidth and marginheight must be 0 pixels or more, not 1 pixel or more.
Section 16.2.2
The FRAME element does not take the target attribute.
Section 16.5
The IFRAME element does not take the target attribute.
Section 17.2.1
In the description of "checkboxes", change "selected" to "checked" in "when the control element's selected attribute is set."
Section 17.6.1
In the "Attributes defined elsewhere" section for the OPTGROUP element, the attributes onfocus, onblur, and onchange should not be there.
Section 18.2.3
To the list of elements that take onfocus and onblur, add A and AREA.
Section 20
The SGML Declaration for HTML 4 must be modified slightly to support hexadecimal numeric character references. The lines:
               GENERAL SGMLREF
               SHORTREF SGMLREF

must be changed to:

               GENERAL SGMLREF
               HCRO "&#38;#x" -- 38 is the number for ampersand --
               SHORTREF SGMLREF

And the initial <!SGML "ISO 8879:1986" must be changed to <!SGML "ISO 8879:1986 (WWW)".

Section 21
The HR element should also take the lang and dir attributes. These are noted as being defined elsewhere at the element's definition, but were left out of the DTDs.
Section 21
The OBJECT element's archive attribute is defined in the DTD as taking a value of type %URI". This is incorrect: the value may be a space-separated list of URIs (as indicated in the definition of the attribute and in the DTD comment).
The FORM element's DTD fragment should include a definition for the accept attribute, which is listed in the element's definition. The definition should be the following:
 accept %ContentTypes; #IMPLIED -- list of MIME types for file upload --
Section B.4.1
At the end of the section, the following sentences are incorrect: "The list of terms in the content is ALL, INDEX, NOFOLLOW, NOINDEX. The name and the content attribute values are case-insensitive." In fact, the META definition specifies that values for the name and content attributes are case-sensitive.
Section B.4.1.1
The specification reads, "Blank lines are not permitted." Blank lines are permitted in the robots.txt file, just not within a single "record". Note that the specification doesn't define record.

Further down the page, the specification reads, "There must be exactly one "User-agent" field per record." In fact, there can be more than one User-Agent field in the robots.txt file, just not more than one per record.

For information about search robots, please consult, for example:

  • The [URI] reference should be updated to RFC 2396 as of August 1998. "Uniform Resource Identifiers (URI): Generic Syntax", T. Berners-Lee, R. Fielding, L. Masinter, August 1998. RFC 2396 updates [RFC1738] and [RFC1808].

A.1.3 Minor typographical errors that were corrected

Section 2.1.1
The phrase "accessible via the path "/TR/REC-html4/". should end with "/TR/REC-html40/".
Section 2.1.3
In the third bullet, the word "applets" should be "applet".
Section 3.3
In bullet two, the sentence "Whether the element's end tag is optional." should read "Whether the element's tags are optional."
Section 3.2.1
In the sentence beginning "Please consult the SGML standard", the phrase "an end tag closes all omitted start tags up to the matching start tag (section 7.5.1)" should read "an end tag closes, back to the matching start tag, all unclosed intervening start tags with omitted end tags".
Section 3.2.2
"Attribute names are always case-insensitive" is missing a final period.
The example with the OPTION element has an improper end tag; it should be </OPTION>.

Later in the section, the sentence that begins "Authors should be aware than" should say "aware that" instead.

Section 5.2.2
Change "ASCII characters" to ASCII-valued bytes".
Section 5.3.1
The second bullet should read "a" instead of "an" in "where H is an hexadecimal number".
Section 6.5.1
The first sentence needs the indefinite article "a" before the word "document".
Section 6.10
The first sentence needs the indefinite article "a" before the word "single".
Section 6.12
Under "Next", "in an linear" should read "in a linear" instead.
Section 6.16
Change "cancelling" to "canceling".
In the paragraph beginning "The scheme attribute allows...", replace "Month-Date-Year" with "Month-Day-Year".
Section 7.5.4
In the sentence after the example, make "declaration" plural.
Section 7.5.6
For the ADDRESS element, in the section "Attributes defined elsewhere", style and title are missing.

Also, after the section on "Attributes defined elsewhere", in "contact information for document", put "a" before "document".

Section 8.2.3
In "Authors may also use special Unicode characters to achieve multiply" change to "multiple" at the end.
The sentence "The first COL element refers to the first 39 columns (doing nothing special to them) and the second one assigns an id value to the fortieth columns so that style sheets may refer to it." should have "fortieth column" instead.
Section 11.2.5
For the TR element, in the section "Attributes defined elsewhere", bgcolor is missing.
Section 11.2.6
For the TH and TD elements, the type of the width and height attributes is changed from "%Pixels;" to "%Length;" to allow for percentage values.
Section 11.3.1
In the first sentence of the frame attribute definition, use "surrounding" instead of "that surrounds".
Section 11.4.1
First bullet, third sentence. "Note that its not always possible" should have "it's" instead.
Section 12.1.2
The last sentence should read "Further information is given below on using links for..." (change "of" to "on"). This sentence is also missing its closing punctuation.
Section 12.2.2
The last paragraph should read "Since the DTD defines the LINK element to be empty..." (insert definite article "the" before "LINK").
Section 12.2.3
Just before section 12.2.4, the third bullet. "richer anchors names" should read "richer anchor names".
Section 13.3.4
In the paragraph that begins "In the following example...", the phrase "cause it so be instantiated" should be changed to cause it to be instantiated" (change "so" to "to").
Section 13.4
Just after the deprecated example, the sentence "This example may be rewritten as follows with OBJECT as follows:" should say "This example may be rewritten with OBJECT as follows:".
Section 13.6.1
Under the "coords" attribute, the word "and" should be substituted for the word "a" so the sentence reads, "This attribute specifies the position and shape on the screen."
Section 13.7.1
In the definition of the height attribute, the phrase "Image and object override" should read "Image and object height override".
Under the subheading "Float an object", in the first paragraph, the first use of the word "object" should be "objects".
In the "Deprecated" example, the first sentence should read "If the clear attribute is set to left or all, the next line will appear as follows:" ("the" before "next line").
Section 15.3
The align attribute for HR is not defined elsewhere.
Section 16.1
In the last sentence of the first paragraph, the word "though" should be "through".
Section 16.3.1
In the second sentence, the word "factorizing" should be "factoring".
Section 16.4.1
The list of "attributes defined elsewhere" was inadvertently omitted after the definition of NOFRAMES. These attributes are: class, id, lang, dir, title, style, and the %events; attributes.
Section 17.1
In "(entering text, selecting menu items, etc.)", add the "," after "text".
Section 17.5
In the paragraph that begins "Visual user agents may render...", the indefinite article "a" should be removed from before the word "flat".
Section 17.12.1
A comma should be added between BUTTON and INPUT in the list of elements that support the "disabled" attribute.
In the examples at the end of the section, change "Content-Disposition: attachment" to "Content-Disposition: file". Also, in an earlier example, change "server.dom" to "server.com".
After the first example, the indefinite article before "content-type" needs to be "a", not "an". The same applies to "content-type" in the next paragraph.

In the sentence beginning "Documents that do not specify...", the indefinite article "a" needs to be removed from before "default scripting language information".

Section 18.2.3
In the first sentence of the first note, the word "realm" should be preceded by the definite article "the".
Section 18.3.1
In the second sentence of the first paragraph, the word "be" needs to be inserted between the words "only" and "rendered".
Section 21
  • In all DTDs, under the COLGROUP element, the content model should indicate "COL", not "col".
  • In the comment about the %Scope entity, change "axes" to "headers" attribute.
Section 24.2.1
At end of definition of "thorn", remove stray final word.
Section 24.4
Change "cp-1252" to "CP-1252".
Appendix: Changes for tables
In the paragraph on the COLGROUP element, the last sentence should read: "The semantics of COLGROUP have been clarified over previous drafts, and rules="basic" has been replaced by rules="groups"."
Changes to elements
The list of deprecated elements should include S.
Section B.3.2
In "delimiter followed by a name character", change to delimiter followed by a name start character".
Section B.4
Under "Provide keywords and descriptions", the middle of the sentence "The value of the name attribute sought by a search attribute is not defined by this specification." should read "search engine" instead.
Section B.4
In the example to indicate the beginning of a collection replace rel="begin" with rel="start".
Section B.4.1
Remove "The name and the content attribute values are case-insensitive."
Section B.5.1.2
The last sentence of the last paragraph is missing a closing parenthesis.
Section B.7.1.1
In the deprecated example:
<BODY bgcolor='&{randomrgb};'>

The word "randomrbg" should be "randomrgb".

A.1.4 Clarifications

Section 3.2.1
In seventh paragraph, added "back to the matching start tag" to "(e.g., they must be properly nested, an end tag closes, back to the matching start tag, all unclosed intervening start tags with omitted end tags (section 7.5.1), etc.)."
Section 3.2.4
Added a statement that comments are markup.
Section 3.3.3
In the second list item, change "Whether the element's end tag" to "Whether the element's tags".
In a content model definition, "A" means that "A" must occur one time and only one time. Also, added "+(A)" and "-(A)" to the section on content model syntax.
Section 7.4.2
Clarified that TITLE may not include comments.
Section 10.3
All uses of "cracker" in this section and its subsections are replaced with "hacker". Also, definitions of "hacker" and "nerd" taken from "The Hacker's Dictionary".
Section 13.7.2
The hspace and vspace attributes are deprecated.
Section 13.7.4
The align attribute is deprecated for IMG, OBJECT, and APPLET.

A.1.5 Known Browser problems

  • Some versions of Netscape Navigator 4.0X crash upon reading Chapter 3 of previous versions of this specification. Netscape is aware of this bug and have fixed it in version 4.5. To work around this bug, go to the Edit/Preferences/Advanced submenu and disable Style Sheets (and possibly JavaScript).

A.2 Changes between 18 December 1997 and 24 April 1998 versions

This section describes how the 24 April 1998 version of the HTML 4.0 specification differs from the 18 December 1997 version.

A.2.1 Errors that were corrected

Section 2.1.1
"http://www.w3.org/TR/PR-html4/cover.html" was said to designate the current HTML specification. The current HTML specification is actually at http://www.w3.org/TR/REC-html40.
Section 7.5.2
The hypertext link on name was incorrect. It now links to types.html#type-name.
Section 7.5.4
href was listed as an attribute of the DIV and SPAN elements. It is not.
Section 7.5.6
A P element was used in the example. It is invalid in ADDRESS.
Section 8.1
In the first example, which reads "Her super-powers were the result...", there was an extra double quote mark before the word "Her".
Section 9.3.4
The attribute width was not noted as deprecated.
Section 11.2.4, "Calculating the width of columns"
The sentence "We have set the value of the align attribute in the third column group to 'center'" read "second" instead of "third".
Section 11.2.6, "Cells that span several rows or columns"
The second paragraph read "In this table definition, we specify that the cell in row four, column two should span a total of three columns, including the current row." It now ends "...including the current column."
Section 13.2
The sentence beginning "User agents must render alternate text when they cannot support ..." read "next", instead of "text".
Section 13.6.2
The last sentence of the second paragraph applied to both the IMG and INPUT elements. However, the ismap attribute is not defined for INPUT. The sentence now only applies to IMG.
Section 14.2.3
The title attribute for the STYLE element was not listed as an attribute defined elsewhere.
Section 14.3.2
The second example set title="Compact". It now sets title="compact".
Section 15.1.2
The sentence ending "the align attribute." read "the align element."
The CSS style rule "BR.mybr { clear: left }" was incorrect, since it refers to the class "mybr" and not the id value. The correct syntax is: "BR#mybr { clear: left }".
Section 16
All the examples containing a Document Type Declaration used something like "THE_LATEST_VERSION_/frameset.dtd" or "THE_LATEST_VERSION_" as the system identifier for the Frameset DTD. They now use the proper document type declaration indicated in Section 7.2
Section 16.3 and Section 16.3.1
The second example of 16.3 and the example of 16.3.1 used the wrong DTD; they now use the Transitional DTD.
Section 17.5
In "attributes defined elsewhere" for the BUTTON element, id, class, lang, dir, title, style, and tabindex were missing. Also, usemap has been removed.
Section 17.6/17.6.1
The "attributes defined elsewhere" for OPTION and OPTGROUP mistakenly listed onfocus, onblur, and onchange. The "attributes defined elsewhere" section was missing for the SELECT element (please see the DTD for the full list of attributes).
Section 17.9.1
The tabindex attribute was said to be defined for the LABEL element. It is not.
Section 17.12.2
The sentence "The following elements support the readonly attribute: INPUT and TEXTAREA." read "The following elements support the readonly attribute: INPUT, TEXT, PASSWORD, and TEXTAREA."
Section 18.2.2, "Local declaration of a scripting language"
The first paragraph read: "It is also possible to specify the scripting language in each SCRIPT element via the type attribute. In the absence of a default scripting language specification, this attribute must be set on each SCRIPT element." Since the type attribute is required for the SCRIPT element, this paragraph now reads: "The type attribute must be specified for each SCRIPT element instance in a document. The value of the type attribute for a SCRIPT element overrides the default scripting language for that element."
Section 21
Added note that the spec includes some syntactic constraints that cannot be expressed in the DTD.
Section 24.2.1 and file HTMLlat1.ent
The comment for the character reference "not" read "= discretionary hyphen". This has been removed.
The FPI in comment read "-//W3C//ENTITIES Full Latin 1//EN//HTML", instead this is now "-//W3C//ENTITIES Latin1//EN//HTML".
Section 24.3.1 and file HTMLsymbol.ent
The FPI in comment read "-//W3C//ENTITIES Symbolic//EN//HTML", instead this is now "-//W3C//ENTITIES Symbols//EN//HTML".
Section A.1.1, "New elements" (previously A.1.1) and Section A.1.1, "Deprecated elements" (previously A.1.2)
The S element which is deprecated was listed as part of the changes between HTML 3.2 and HTML 4.0. This element was not actually defined in HTML 3.2. It is now in the new elements list.
Section A.1.3 (previously A.3)
The longdesc attribute was said to be specified for tables. It is not. Instead, the summary attribute allows authors to give longer descriptions of tables.
Section B.4
The sentence "You may help search engines by using the LINK element with rel="start" along with the title attribute, ..." read "You may help search engines by using the LINK element with rel="begin" along with a TITLE, ..." The same stands for the companion example.
Section B.5.1
The sentence "This can be altered by setting the width attribute of the TABLE element." read "This can be altered by setting the width-TABLE attribute of the TABLE element."
Section B.5.2
The sentence "Rules for handling objects too large for a column apply when the explicit or implied alignment results in a situation where the data exceeds the assigned width of the column." read "too large for column". The meaning of the sentence was unclear since it referred to "rules" governing an error condition; user agent behavior in error conditions lies outside the scope of the specification.
Index of attributes
The href attribute for the BASE element was marked as deprecated. It is not. However, it is not defined in the Strict DTD either.

The language attribute for the SCRIPT element was not marked as deprecated. It is now, and it is no longer defined in the Strict DTD.

A.2.2 Minor typographical errors that were corrected

Section 2.1.3
"Relative URIs are resolved ..." was "Relative URIsare resolved ...".
Section 2.2.1
The second word "of" was missing in "Despite never receiving consensus in standards discussions, these drafts led to the adoption of a range of new features."
Section 3.3.3
The sentence "Element types that are designed to have no content are called empty elements." contained one too many "elements". The word "a" was missing in the sentence "A few HTML element types use an additional SGML feature to exclude elements from a content model".

Also, in list item two, a period was missing between "optional" and "Two".

Section 3.3.4
In the section on "Boolean attributes", the sentence that begins "In HTML, boolean attributes may appear in minimized ..." included a bogus word "be".
Section 6.3
The sentence beginning "For introductory information about attributes, ..." read "For introductory about attributes, ...".
Section 6.6
In the first sentence of the section on Pixels, "is an integer" read "is integer".
Section 7.4.1
The first word "The" was missing at the beginning of the section title.
Section 7.4.4
The last word "a" was missing in the sentence "The meaning of a property and the set of legal values for that property should be defined in a reference lexicon called profile."
Section 7.5.2
"Variable déclarée deux fois" read "Variable déclaré deux fois".
Section 9.2.2
The language of the quotations was "en" instead of "en-us", while in British English, the single quotation marks would delimit the outer quotation.
Section 9.3.2
In the first line, the sixth character of "&#x000A" was the letter 'O' instead of a zero.
Section 10.3.1
"(they are case-sensitive)" read "(the are case-sensitive)".
Section 12.1.1
In the sentence beginning "Note that the href attribute in each source ..." the space was missing between "href" and "attribute".
Section 12.1.2
The sentence "Links that express other types of relationships have one or more link types specified in their source anchors." read "Links that express other types of relationships have one or more link type specified in their source anchor."
Section 12.1.5
The second paragraph reads "the hreflang attribute provides user agents about the language of a ..." It should read "the hreflang attribute provides user agents with information about the language of a ..."
Section 13.3.2
In the sentence beginning "Any number of PARAM elements may appear in the content of an OBJECT or APPLET element, ..." a space was missing between "APPLET" and "element".
Section 14.2.2
There was a bogus word "style" at the beginning of the sentence "The style attribute specifies ..."
Section 17.2
In "Those controls for which name/value pairs are submitted are called successful controls" the word "for" was missing.
Section 17.10
There was a bogus word "/samp" just before section 17.11.
Section 17.11
The first sentence read, "In an HTML document, an element must receive focus from the user in order to become active and perform their tasks" (instead of "its" tasks).
Section 18.2.2
Just before section 18.2.3, the sentence that includes "a name attribute takes precedence over an id if both are set." read "over a id if both are set.".
Section 19.1
The section title read "document Document Validation". It now is "Document Validation".
Section 21
The FPI for the Transitional HTML 4.0 DTD was missing a closing double quote.
Section B.5.1/B.5.2
This sections referred to a non-existent cols attribute. This attribute is not part of HTML 4.0. Calculating the number of columns in a table is described in section Section, in the chapter on tables. In sections B.5.1 and B.5.2, occurrences of cols have been replaced by "the number of columns specified by the COL and COLGROUP elements".
Section B.5.2
In the sentence "The values for the frame attribute have been chosen to avoid clashes with the rules, align and valign attributes." a space was missing between "the" and "frame" and the last attribute was "valign-COLGROUP".
Section B.10.1
The last sentence read "Once a file is uploaded, the processing agent should process and store the it appropriately." "the it" was changed to "it".
Index of Elements
"strike-through" in the description of the S element read "sstrike-through".

A.3 Changes between HTML 3.2 and HTML 4.0 (18 December 1997)

This section describes how the 18 December 1997 specification of HTML 4.0 differs from HTML 3.2 ([HTML32]).

A.3.1 Changes to elements

New elements 


Deprecated elements 

The following elements are deprecated: APPLET, BASEFONT, CENTER, DIR, FONT, ISINDEX, MENU, S, STRIKE, and U.

Obsolete elements 

The following elements are obsolete: LISTING, PLAINTEXT, and XMP. For all of them, authors should use the PRE element instead.

A.3.2 Changes to attributes

  • Almost all attributes that specify the presentation of an HTML document (e.g., colors, alignment, fonts, graphics, etc.) have been deprecated in favor of style sheets. The list of attributes in the appendix indicates which attributes have been deprecated.
  • The id and class attribute allow authors to assign name and class information to elements for style sheets, as anchors, for scripting, for object declarations, general purpose document processing, etc.

A.3.3 Changes for accessibility

HTML 4.0 features many changes to promote accessibility, including:

  • The title attribute may now be set on virtually every element.
  • Authors may provide long descriptions of tables (see the summary attribute), images and frames (see the longdesc attribute).

A.3.4 Changes for meta data

Authors may now specify profiles that provide explanations about meta data specified with the META or LINK elements.

A.3.5 Changes for text

  • New features for internationalization allow authors to specify text direction and language.
  • The INS and DEL elements allow authors to mark up changes in their documents.
  • The ABBR and ACRONYM elements allow authors to mark up abbreviations and acronyms in their documents.

A.3.6 Changes for links

  • The id attribute makes any element the destination anchor of a link.

A.3.7 Changes for tables

The HTML 4.0 table model has grown out of early work on HTML+ and the initial draft of HTML3.0. The earlier model has been extended in response to requests from information providers as follows:

  • Authors may specify tables that may be incrementally displayed as the user agent receives data.
  • Authors may specify tables that are more accessible to users with non-visual user agents.
  • Authors may specify tables with fixed headers and footers. User agents may take advantage of these when scrolling large tables or rendering tables to paged media.

The HTML 4.0 table model also satisfies requests for optional column-based defaults for alignment properties, more flexibility in specifying table frames and rules, and the ability to align on designated characters. It is expected, however, that style sheets will take over the task of rendering tables in the near future.

In addition, a major goal has been to provide backwards compatibility with the widely deployed Netscape implementation of tables. Another goal has been to simplify importing tables conforming to the SGML CALS model. The latest draft makes the align attribute compatible with the latest versions of the most popular browsers. Some clarifications have been made to the role of the dir attribute and recommended behavior when absolute and relative column widths are mixed.

A new element, COLGROUP, has been introduced to allow sets of columns to be grouped with different width and alignment properties specified by one or more COL elements. The semantics of COLGROUP have been clarified over previous drafts, and rules="basic" has been replaced by rules="groups".

The style attribute is included as a means for extending the properties associated with edges and interiors of groups of cells. For instance, the line style: dotted, double, thin/thick etc; the color/pattern fill for the interior; cell margins and font information. This will be the subject for a companion specification on style sheets.

The frame and rules attributes have been modified to avoid SGML name clashes with each other, and to avoid clashes with the align and valign attributes. These changes were additionally motivated by the desire to avoid future problems if this specification is extended to allow frame and rules attributes with other table elements.

A.3.8 Changes for images, objects, and image maps

  • The OBJECT element allows generic inclusion of objects.
  • The IFRAME and OBJECT elements allow authors to create embedded documents.
  • The alt attribute is required on the IMG and AREA elements.
  • The mechanism for creating image maps now allows authors to create more accessible image maps. The content model of the MAP element has changed for this reason.

A.3.9 Changes for forms

This specification introduces several new attributes and elements that affect forms:

  • The accesskey attribute allows authors to specify direct keyboard access to form controls.
  • The disabled attribute allows authors to make a form control initially insensitive.
  • The readonly attribute, allows authors to prohibit changes to a form control.
  • The LABEL element associates a label with a particular form control.
  • The FIELDSET element groups related fields together and, in association with the LEGEND element, can be used to name the group. Both of these new elements allow better rendering and better interactivity. Speech-based browsers can better describe the form and graphic browsers can make labels sensitive.
  • A new set of attributes, in combination with scripts, allow form providers to verify user-entered data.
  • The BUTTON element and INPUT with type set to "button" can be used in combination with scripts to create richer forms.
  • The OPTGROUP element allows authors to group menu options together in a SELECT, which is particularly important for form accessibility.
  • Additional changes for internationalization.

A.3.10 Changes for style sheets

HTML 4.0 supports a larger set of media descriptors so that authors may write device-sensitive style sheets.

A.3.11 Changes for frames

HTML 4.0 supports frame documents and inline frames.

A.3.12 Changes for scripting

Many elements now feature event attributes that may be coupled with scripts; the script is executed when the event occurs (e.g., when a document is loaded, when the mouse is clicked, etc.).

A.3.13 Changes for internationalization

HTML 4.0 integrates the recommendations of [RFC2070] for the internationalization of HTML.

However, this specification and [RFC2070] differ as follows:

<Character entity references in HTML 4Appendix B. Performance, Implementation and Design Notes>
^ContentsLast updated: Thu, 17 Aug 2006