REC-html40-971218
HTML 4.0 Specification
W3C Recommendation 18-Dec-1997
- This version:
- http://www.w3.org/TR/REC-html40-971218
- Latest version:
- http://www.w3.org/TR/REC-html40
- Previous version:
- http://www.w3.org/TR/PR-html40-971107
- Editors:
- Dave Raggett
<dsr@w3.org>
Arnaud Le Hors
<lehors@w3.org>
Ian Jacobs
<ij@w3.org>
Abstract
This specification defines the HyperText Markup Language
(HTML), version 4.0, the publishing language of the World Wide
Web. In addition to the text, multimedia, and hyperlink features
of the previous versions of HTML, HTML 4.0 supports more
multimedia options, scripting languages, style sheets, better
printing facilities, and documents that are more accessible to
users with disabilities. HTML 4.0 also takes great strides
towards the internationalization of documents, with the goal of
making the Web truly World Wide.
HTML 4.0 is an SGML application conforming to International
Standard ISO 8879 -- Standard Generalized Markup Language [ISO8879].
Status of this document
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.0 documents rather
than HTML 3.2 documents (see [HTML32]).
For reasons of backwards compatibility, W3C also recommends that
tools interpreting HTML 4.0 continue to support HTML 3.2 and HTML
2.0 as well.
A list of current W3C Recommendations and other technical
documents can be found at http://www.w3.org/TR.
Public discussion on HTML features takes place on www-html@w3.org.
Available formats
The HTML 4.0 W3C Recommendation is also available in the
following formats:
- A plain text file:
- http://www.w3.org/TR/REC-html40-971218/html40.txt
(723Kb),
- A gzip'ed tar file containing HTML documents:
- http://www.w3.org/TR/REC-html40-971218/html40.tgz
(339Kb),
- A zip file containing HTML documents (this is a '.zip'
file not an '.exe'):
- http://www.w3.org/TR/REC-html40-971218/html40.zip
(372Kb),
- A Postscript file:
- http://www.w3.org/TR/REC-html40-971218/html40.ps
(4.4Mb, 363 pages),
- A PDF file:
- http://www.w3.org/TR/REC-html40-971218/html40.pdf
(2.1Mb) file.
In case of a discrepancy between electronic and printed forms
of the specification, the electronic version is the definitive
version.
Available languages
The English version of this specification is the only
normative version. However, for translations of this document,
see http://www.w3.org/MarkUp/html40-updates/translations.html.
Errata
The list of known errors in this specification is available at
http://www.w3.org/MarkUp/html40-updates/html40-errata.html
Please report errors in this document to www-html-editor@w3.org.
- About the HTML 4.0
Specification
- How the specification
is organized
- Document conventions
- Elements and
attributes
- Notes and
examples
- Acknowledgments
- Copyright Notice
- Introduction to
HTML 4.0
- What is the
World Wide Web?
- Introduction
to URIs
- Fragment
identifiers
- Relative
URIs
- What is HTML?
- A
brief history of HTML
- HTML 4.0
- Internationalization
-
Accessibility
- Tables
- Compound
documents
- Style
sheets
- Scripting
- Printing
- Authoring
documents with HTML 4.0
- 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
- 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
-
Preselected 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 Document Validation
- Sample
SGML catalog
-
SGML Declaration of HTML 4.0
- SGML
Declaration
- Document
Type Definition
- Transitional
Document Type Definition
- Frameset
Document Type Definition
- Character
entity references in HTML 4.0
- 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
between HTML 3.2 and HTML 4.0
- Changes to
elements
- New
elements
- Deprecated
elements
- Obsolete
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