HTML 4.01 Specification
W3C Recommendation 24 December 1999
- This version:
-
./TR/1999/REC-html401-19991224
- (plain text [794Kb], gzip'ed
tar archive of HTML files [371Kb], a .zip archive of
HTML files [405Kb], gzip'ed Postscript file [746Kb,
389 pages], gzip'ed PDF file [963Kb])
- Latest version of HTML 4.01:
-
./TR/html401
- Latest version of HTML 4:
- ./TR/html4
- Latest version of HTML:
- ./TR/html
- Previous version of HTML 4.01:
-
./TR/1999/PR-html40-19990824
- Previous HTML 4 Recommendation:
-
./TR/1998/REC-html40-19980424
- Editors:
- Dave Raggett <dsr@w3.org>
- Arnaud Le Hors, W3C
- Ian Jacobs, W3C
Copyright
©1997-1999 W3C® (MIT,
INRIA, Keio), All Rights
Reserved. W3C liability,
trademark, document
use and software
licensing rules apply.
Abstract
This specification defines the HyperText Markup Language (HTML), the
publishing language of the World Wide Web. This specification defines HTML
4.01, which is a subversion of HTML 4. In addition to the text, multimedia, and
hyperlink features of the previous versions of HTML (HTML 3.2
[HTML32] and HTML 2.0 [RFC1866]), HTML 4
supports more multimedia options, scripting languages, style sheets, better
printing facilities, and documents that are more accessible to users with
disabilities. HTML 4 also takes great strides towards the internationalization
of documents, with the goal of making the Web truly World Wide.
HTML 4 is an SGML application conforming to International Standard ISO 8879
-- Standard Generalized Markup Language [ISO8879].
Status of this document
This section describes the status of this document at the time of its
publication. Other documents may supersede this document. The latest status of
this document series is maintained at the W3C.
This document specifies HTML 4.01, which is part of the HTML 4 line of
specifications. The first version of HTML 4 was HTML 4.0 [HTML40], published
on 18 December 1997 and revised 24 April 1998. This specification is the first
HTML 4.01 Recommendation. It includes non-editorial changes since the 24 April version of HTML
4.0. There have been some changes to the DTDs, for example. This document
obsoletes previous versions of HTML 4.0, although W3C will continue to make
those specifications and their DTDs available at the W3C Web site.
This document has been reviewed by W3C Members and other interested parties
and has been endorsed by the Director as a W3C Recommendation. It is a stable
document and may be used as reference material or cited as a normative
reference from another document. W3C's role in making the Recommendation is to
draw attention to the specification and to promote its widespread deployment.
This enhances the functionality and interoperability of the Web.
W3C recommends that user agents and authors (and in particular, authoring
tools) produce HTML 4.01 documents rather than HTML 4.0 documents. W3C
recommends that authors produce HTML 4 documents instead of HTML 3.2 documents.
For reasons of backward compatibility, W3C also recommends that tools
interpreting HTML 4 continue to support HTML 3.2 and HTML 2.0 as well.
For information about the next generation of HTML, "The Extensible HyperText
Markup Language" [XHTML], please refer to the W3C HTML Activity and the list of W3C Technical Reports.
This document has been produced as part of the W3C HTML Activity. The goals of the HTML Working Group (Members only) are discussed in the HTML Working Group
charter (Members
only).
A list of current W3C Recommendations and other technical documents can be
found at ./TR.
Public discussion on HTML features takes place on www-html@w3.org (archives of
www-html@w3.org).
Available languages
The English version of this specification is the only normative version.
However, for translations of this document, see
./MarkUp/html4-updates/translations.
Errata
- The list of known errors in this specification is available at:
-
./MarkUp/html4-updates/errata
Please report errors in this document to www-html-editor@w3.org.
- About the HTML 4
Specification
- Introduction to
HTML 4
- On SGML and
HTML
- Conformance:
requirements and recommendations
- HTML Document
Representation - Character sets, character encodings, and
entities
- Basic HTML data
types - Character data, colors, lengths, URIs, content types,
etc.
- The global
structure of an HTML document - The HEAD and BODY of a
document
- Language
information and text direction - International considerations for
text
- Text -
Paragraphs, Lines, and Phrases
- Lists -
Unordered, Ordered, and Definition Lists
- Tables
- Links -
Hypertext and Media-Independent Links
- Objects,
Images, and Applets
- Style
Sheets - Adding style to HTML documents
- Alignment,
font styles, and horizontal rules
- Frames
- Multi-view presentation of documents
- Forms -
User-input Forms: Text Fields, Buttons, Menus, and more
- Scripts
- Animated Documents and Smart Forms
- SGML reference
information for HTML - Formal definition of HTML and
validation
- SGML Declaration of HTML
4
-
Document Type Definition
- Transitional Document Type Definition
- Frameset Document Type Definition
- Character entity
references in HTML 4
-
Changes
- Performance,
Implementation, and Design Notes
- About the HTML 4
Specification
- How the specification is
organized
- Document conventions
- Elements and
attributes
- Notes and examples
- Acknowledgments
- Acknowledgments for the
current revision
- Copyright Notice
- Introduction to
HTML 4
- What is the World Wide
Web?
- Introduction to
URIs
- Fragment
identifiers
- Relative URIs
- What is HTML?
- A brief history of
HTML
- HTML 4
-
Internationalization
- Accessibility
- Tables
- Compound
documents
- Style sheets
- Scripting
- Printing
- Authoring documents with
HTML 4
- Separate structure and
presentation
- Consider universal
accessibility to the Web
- Help user agents with
incremental rendering
- On SGML and
HTML
- Introduction to
SGML
- SGML constructs used in
HTML
- Elements
- Attributes
- Character
references
- Comments
- How to read the HTML
DTD
- DTD Comments
- Parameter entity
definitions
- Element
declarations
- Attribute
declarations
- Conformance:
requirements and recommendations
- Definitions
- SGML
- The text/html content type
- HTML Document
Representation - Character sets, character encodings, and entities
- The Document Character
Set
- Character encodings
- Choosing an encoding
- Specifying the character
encoding
- Character references
- Numeric character
references
- Character entity
references
- Undisplayable
characters
- Basic HTML data
types - Character data, colors, lengths, URIs, content types, etc.
- Case information
- SGML basic types
- Text strings
- URIs
- Colors
- Notes on using colors
- Lengths
- Content types (MIME
types)
- Language codes
- Character encodings
- Single characters
- Dates and times
- Link types
- Media descriptors
- Script data
- Style sheet data
- Frame target names
- The global
structure of an HTML document - The HEAD and BODY of a document
- Introduction to the
structure of an HTML document
- HTML version
information
- The HTML element
- The document head
- The HEAD element
- The TITLE element
- The title
attribute
- Meta data
- The document body
- The BODY element
- Element identifiers:
the id and class attributes
- Block-level and inline
elements
- Grouping elements: the
DIV and SPAN
elements
- Headings: The H1, H2,
H3, H4, H5,
H6 elements
- The ADDRESS element
- Language
information and text direction - International considerations for
text
- Specifying the language
of content: the lang attribute
- Language codes
- Inheritance of
language codes
- Interpretation of
language codes
- Specifying the
direction of text and tables: the dir attribute
- Introduction to the
bidirectional algorithm
- Inheritance of text
direction information
- Setting the direction
of embedded text
- Overriding the
bidirectional algorithm: the BDO element
- Character references
for directionality and joining control
- The effect of style
sheets on bidirectionality
- Text -
Paragraphs, Lines, and Phrases
- White space
- Structured text
- Phrase elements: EM, STRONG, DFN, CODE,
SAMP, KBD, VAR,
CITE, ABBR, and ACRONYM
- Quotations: The BLOCKQUOTE and Q elements
- Subscripts and
superscripts: the SUB and
SUP elements
- Lines and Paragraphs
- Paragraphs: the P element
- Controlling line
breaks
- Hyphenation
- Preformatted text: The
PRE element
- Visual rendering of
paragraphs
- Marking document changes:
The INS and DEL elements
- Lists -
Unordered, Ordered, and Definition Lists
- Introduction to
lists
- Unordered lists (UL), ordered
lists (OL), and list items (LI)
- Definition lists: the DL, DT, and
DD elements
- Visual rendering of
lists
- The DIR and MENU elements
- Tables
- Introduction to
tables
- Elements for
constructing tables
- The TABLE element
- Table Captions: The
CAPTION element
- Row groups: the THEAD, TFOOT, and TBODY elements
- Column groups: the
COLGROUP and COL
elements
- Table rows: The TR element
- Table cells: The
TH and TD elements
- Table formatting by
visual user agents
- Borders and
rules
- Horizontal and
vertical alignment
- Cell margins
- Table rendering by
non-visual user agents
- Associating header
information with data cells
- Categorizing
cells
- Algorithm to find
heading information
- Sample table
- Links -
Hypertext and Media-Independent Links
- Introduction to links
and anchors
- Visiting a linked
resource
- Other link
relationships
- Specifying anchors and
links
- Link titles
- Internationalization
and links
- The A element
- Syntax of anchor
names
- Nested links are
illegal
- Anchors with the
id attribute
- Unavailable and
unidentifiable resources
- Document relationships:
the LINK element
- Forward and reverse
links
- Links and external
style sheets
- Links and search
engines
- Path information: the
BASE element
-
Resolving relative URIs
- Objects,
Images, and Applets
- Introduction to
objects, images, and applets
- Including an image:
the IMG element
- Generic inclusion: the
OBJECT element
- Rules for rendering
objects
- Object
initialization: the PARAM element
- Global naming
schemes for objects
- Object declarations
and instantiations
- Including an applet:
the APPLET element
- Notes on embedded
documents
- Image maps
- Client-side image
maps: the MAP and AREA
elements
- Server-side image
maps
- Visual presentation of
images, objects, and applets
- Width and
height
- White space around
images and objects
- Borders
- Alignment
- How to specify
alternate text
- Style
Sheets - Adding style to HTML documents
- Introduction to style
sheets
- Adding style to
HTML
- Setting the default
style sheet language
- Inline style
information
- Header style
information: the STYLE element
- Media types
- External style
sheets
- Preferred and
alternate style sheets
- Specifying external
style sheets
- Cascading style
sheets
- Media-dependent
cascades
- Inheritance and
cascading
- Hiding style data from
user agents
- Linking to style
sheets with HTTP headers
- Alignment,
font styles, and horizontal rules
- Formatting
- Background
color
- Alignment
- Floating
objects
- Fonts
- Font style
elements: the TT, I,
B, BIG, SMALL, STRIKE, S, and U elements
- Font modifier
elements: FONT and
BASEFONT
- Rules: the HR element
- Frames
- Multi-view presentation of documents
- Introduction to
frames
- Layout of frames
- The FRAMESET element
- The FRAME element
- Specifying target
frame information
- Setting the default
target for links
- Target
semantics
- Alternate content
- The NOFRAMES element
- Long descriptions of
frames
- Inline frames: the
IFRAME element
- Forms -
User-input Forms: Text Fields, Buttons, Menus, and more
- Introduction to
forms
- Controls
- Control
types
- The FORM element
- The INPUT element
- Control types
created with INPUT
- Examples of forms
containing INPUT controls
- The BUTTON element
- The SELECT, OPTGROUP, and OPTION elements
- Pre-selected
options
- The TEXTAREA element
- The ISINDEX element
- Labels
- The LABEL element
- Adding structure to
forms: the FIELDSET and
LEGEND elements
- Giving focus to an
element
- Tabbing
navigation
- Access keys
- Disabled and
read-only controls
- Disabled
controls
- Read-only
controls
- Form submission
- Form submission
method
- Successful
controls
- Processing form
data
- Form content
types
- Scripts
- Animated Documents and Smart Forms
- Introduction to
scripts
- Designing documents
for user agents that support scripting
- The SCRIPT element
- Specifying the
scripting language
- Intrinsic
events
- Dynamic
modification of documents
- Designing documents
for user agents that don't support scripting
- The NOSCRIPT element
- Hiding script data
from user agents
- SGML reference
information for HTML - Formal definition of HTML and validation
- Document
Validation
- Sample SGML
catalog
- SGML Declaration of HTML
4
- SGML
Declaration
-
Document Type Definition
- Transitional Document Type Definition
- Frameset Document Type Definition
- Character entity
references in HTML 4
- Introduction to
character entity references
- Character entity
references for ISO 8859-1 characters
- The list of
characters
- Character entity
references for symbols, mathematical symbols, and Greek letters
- The list of
characters
- Character entity
references for markup-significant and internationalization characters
- The list of
characters
- Changes
- Changes between 24
April 1998 HTML 4.0 and 24 December 1999 HTML 4.01 versions
- Changes to the
specification
- Errors that were
corrected
- Minor typographical
errors that were corrected
-
Clarifications
- Known Browser
problems
- Changes between 18
December 1997 and 24 April 1998 versions
- Errors that were
corrected
- Minor typographical
errors that were corrected
- Changes between HTML
3.2 and HTML 4.0 (18 December 1997)
- Changes to
elements
- Changes to
attributes
- Changes for
accessibility
- Changes for meta
data
- Changes for
text
- Changes for
links
- Changes for
tables
- Changes for images,
objects, and image maps
- Changes for
forms
- Changes for style
sheets
- Changes for
frames
- Changes for
scripting
- Changes for
internationalization
- Performance,
Implementation, and Design Notes
- Notes on invalid
documents
- Special characters in
URI attribute values
- Non-ASCII characters
in URI attribute values
- Ampersands in URI
attribute values
- SGML implementation
notes
- Line breaks
- Specifying non-HTML
data
- SGML features with
limited support
- Boolean
attributes
- Marked
Sections
- Processing
Instructions
- Shorthand
markup
- Notes on helping search
engines index your Web site
- Search robots
- Notes on tables
- Design rationale
- Recommended Layout
Algorithms
- Notes on forms
- Incremental
display
- Future
projects
- Notes on scripting
- Reserved syntax for
future script macros
- Notes on
frames
- Notes on
accessibility
- Notes on security
- Security issues for
forms