This page has been robot translated, sorry for typos if any. Original content here.

W3C REC-html40-971218

HTML 4.0 specification

Recommendation W3C December 18, 1997


This specification defines the HyperText Markup Language (HTML) version 4.0, the language used for publishing on the World Wide Web. In addition to the text, multimedia features and hyperlinks present in previous versions of the HTML language, HTML 4.0 supports new multimedia features, scripts, style sheets, improved printing and more accessible documents for people with physical disabilities. The version of HTML 4.0 also successfully implemented the internationalization of documents, the purpose of which is to make the Web truly world-wide.

HTML 4.0 is an SGML application that complies with the International Standard ISO 8879 - Standard Generalized Markup Language [ISO8879] .

Status of this document

This document was viewed by W3C members and other stakeholders and organizations, and approved by the Director as a W3C Recommendation. This is a permanent document; it can be used as a reference or can be cited in other documents as normative. The role of W3C in this recommendation is to draw attention to this specification and expand its scope. This expands the functionality and the ability to interact on the Web.

W3C recommends that users and authors (especially document creation tools) use the version of HTML 4.0 instead of HTML 3.2 (see [HTML32]). To ensure compatibility with previous versions, W3C also recommends HTML 3.2 and HTML 2.0 support for HTML 4.0 interpretation tools.

A list of current W3C Recommendations and other technical documents can be found at .

Discussion about the functions of HTML occurs at .

Available Formats

The W3C HTML 4.0 recommendation can also be obtained in the following formats:

In the event of discrepancies between the electronic and printed forms of the specification, an electronic version should be used.


The only normative version is the English version of this document. However, translations of this document can be found at .


The list of errors found in the specification can be found at

On the errors found in this document, report to .


  1. About the HTML 4.0 specification
    1. Organization of the specification
    2. The agreements adopted in the document
      1. Elements and attributes
      2. Remarks and examples
    3. Thanks
    4. Copyright Information
  2. Introduction to HTML 4.0
    1. What is the World Wide Web?
      1. Introduction to the URI
      2. Fragment identifiers
      3. Relative URIs
    2. What is HTML?
      1. A Brief History of HTML
    3. HTML 4.0
      1. Internationalization
      2. Availability
      3. Tables
      4. Compound documents
      5. Style Sheets
      6. Scripts
      7. Printing
    4. Creating documents in HTML 4.0 format
      1. Separation of structure and representation
      2. Universality of access to the Web
      3. Help to user agents in sequential imaging
  3. About SGML and HTML
    1. Introduction to SGML
    2. SGML constructs used in HTML
      1. Elements
      2. Attributes
      3. References to symbols
    3. How to read HTML DTD
      1. DTD Comments
      2. Defining parameter combinations
      3. Member declarations
      4. Attribute declarations
  4. Compliance: requirements and recommendations
    1. Definitions
    2. SGML
    3. Content type text / html
  5. HTML document representation - Character sets, character encodings, and entities
    1. Document character set
    2. Character encodings
      1. Choosing an encoding
      2. Specifying a character set
    3. References to symbols
      1. Numeric character references
      2. Combinations of references to symbols
    4. Unexpected symbols
  6. Basic types of HTML data - Information about symbols, colors, lengths, URIs, types of content, etc.
    1. Information about the register
    2. The main types of SGML
    3. Text strings
    4. URI
    5. Colors
      1. Notes on using colors
    6. Lengths
    7. Content types (MIME types)
    8. Language Codes
    9. Encodings
    10. Single characters
    11. date and time
    12. Reference types
    13. Device Descriptors
    14. Scenario data
    15. Stylesheet data
    16. Targeted personnel names
  7. Global document structure in HTML format - HEAD and BODY sections of the document
    1. Introduction to the structure of an HTML document
    2. Information about the HTML version
    3. The HTML element
    4. Document header
      1. HEAD Element
      2. TITLE element
      3. Attribute title
      4. Metadata
    5. Body of the document
      1. BODY element
      2. Element IDs: id and class attributes
      3. Elements of the block's frost and built-in elements
      4. Grouping of elements: elements DIV and SPAN
      5. Headings: elements H1 , H2 , H3 , H4 , H5 , H6
      6. Element ADDRESS
  8. Information about the language and the direction of the text - Texts in different languages
    1. Specifying the Content Language: The lang attribute
      1. Language Codes
      2. Inheritance of language codes
      3. Interpretation of language codes
    2. Specifying the direction of text and tables: the dir attribute
      1. Introduction to the bidirectional algorithm
      2. Inheritance of information about the direction of the text
      3. Setting the direction of the embedded text
      4. Priority over bidirectional algorithm: BDO element
      5. References to symbols for direction and union control
      6. Style Sheets and Bidirectionality
  9. Text - Paragraphs, lines and phrases
    1. Unexpected symbols
    2. Structured Text
      1. Elements of phrases: EM , STRONG , DFN , CODE , SAMP , KBD , VAR , CITE , ABBR and ACRONYM
      2. Quotes: BLOCKQUOTE and Q elements
      3. Upper and lower indexes: SUB and SUP elements
    3. Rows and paragraphs
      1. Paragraphs: P elements
      2. Managing the transition to the next line
      3. Movements
      4. Formatted text: PRE element
      5. Visual presentation of paragraphs
    4. Marking changes in the document: INS and DEL elements
  10. Lists - Unordered, ordered lists and definition lists
    1. Introduction to Lists
    2. Unordered lists ( ULs ), ordered lists ( OL ), and list items ( LI )
    3. Definition lists : DL , DT, and DD elements
      1. Visual representation of lists
    4. DIR and MENU elements
  11. Tables
    1. Introduction to tables
    2. Elements of the construction of tables
      1. The TABLE element
      2. Captions of tables: CAPTION element
      3. GRtsppy lines: elements THEAD , TFOOT and TBODY
      4. Column groups: COLGROUP and COL elements
      5. Table rows: TR element
      6. Table cells: TH and TD elements
    3. Formatting tables with visual user agents
      1. Borders and rules
      2. Horizontal and vertical alignment
      3. Cell Fields
    4. Presentation of tables by non-visual user agents
      1. Relationship between header information and data cells
      2. Categorization of cells
      3. Algorithm for searching header information
    5. Example table
  12. References - Hypertext and device-independent links
    1. Introduction to links and anchors
      1. Go to the resource referenced by the link
      2. Other reference relationships
      3. Assigning anchors and links
      4. Headers of links
      5. Internationalization and Links
    2. Element A
      1. Syntax of the names of anchors
      2. Nested links are not allowed
      3. Anchors with id attribute
      4. Inaccessible and undetectable resources
    3. Document Relationships: LINK Element
      1. Direct and Backlinks
      2. Links and external stylesheets
      3. Links and search engines
    4. Path information: BASE element
      1. Resolving relative URIs
  13. Objects, Images and Applets
    1. Introduction to objects, images and applets
    2. Image inclusion: IMG element
    3. General inclusion: OBJECT element
      1. Rules for the presentation of objects
      2. Object initialization: PARAM element
      3. Global naming schemes for objects
      4. Announcing and initializing an object
    4. Enable applet: APPLET element
    5. Comments on the implemented documents
    6. Navigation maps
      1. Client navigation cards: MAP and AREA elements
      2. Server-side navigation maps
    7. Visual representation of images, objects and applets
      1. Width and height
      2. Space around images and objects
      3. Borders
      4. Alignment
    8. How to specify an alternate text
  14. Style Sheets - Style in HTML documents
    1. Introduction to style sheets
    2. How to add style to HTML
      1. Set the default style sheet language
      2. Built-in style info
      3. Style information in title: STYLE element
      4. Types of devices
    3. External Style Sheets
      1. Preferred and alternative style sheets
      2. Specifying external style sheets
    4. Cascading Style Sheets
      1. Cascades that are device-independent
      2. Inheritance and cascades
    5. How to hide style information from user agents
    6. Linking style sheets using HTTP headers
  15. Alignment, font styles and horizontal separators
    1. Formatting
      1. Background color
      2. Alignment
      3. Attachable objects
    2. Fonts
      1. Elements that define the font style: elements TT , I , B , BIG , SMALL , STRIKE , S and U
      2. Font controls: FONT and BASEFONT
    3. Separators: an element of HR
  16. Frames - A document in several windows
    1. Introduction to Frames
    2. Arrangement of frames
      1. FRAMESET element
      2. Element FRAME
    3. Define the purpose of the frame
      1. Set default target for links
      2. Semantics of goals
    4. Alternate Content
      1. Element NOFRAMES
      2. Long descriptions of frames
    5. Built-in frames: the IFRAME element
  17. Forms - User-filled forms: text fields, buttons, menus, etc.
    1. Introduction to Forms
    2. Control elements
      1. Types of control elements
    3. FORM element
    4. INPUT element
      1. Types of control elements created with the INPUT element
      2. Examples of forms with control elements such as INPUT
    5. BUTTON element
    6. Elements SELECT , OPTGROUP and OPTION
      1. Pre-selected options
    7. Element TEXTAREA
    8. ISINDEX element
    9. Labels
      1. LABEL element
    10. Adding structures to the forms: FIELDSET and LEGEND elements
    11. Transition of focus to an element
      1. Navigate using the Tab key
      2. Access keys
    12. Disconnected controls and read-only elements
      1. Disconnected controls
      2. Read-only controls
    13. Sending a form
      1. Form submission method
      2. Successful controls
      3. Form data processing
      4. Form content types
  18. Scripts - Animated documents and smart forms
    1. Introduction to scripts
    2. Development of documents for user agents that support scripts
      1. SCRIPT element
      2. Specify the language of the script
      3. Internal events
      4. Dynamic change of documents
    3. Development of documents for user agents that do not support scripts
      1. NOSCRIPT element
      2. How to hide the script from user agents
  19. Background information SGML for HTML - Formal HTML definition and validation
    1. Verifying the correctness of the document
    2. Example of the SGML directory
  20. SGML-HTML 4.0 Announcement
    1. SGML declaration
  21. Document Type Definition
  22. Transitional Document Type Definition
  23. Frameset Document Type Definition
  24. Character entity references in HTML 4.0
    1. Introduction to character
    2. Character entity references for ISO 8859-1 characters
      1. The list of characters
    3. Character entity references for symbols, mathematical symbols, and Greek letters
      1. The list of characters
    4. Character entity references for markup-significant and internationalization characters
      1. The list of characters
  1. Differences between HTML 3.2 and HTML 4.0
    1. Differences in elements
      1. New items
      2. Unwanted elements
      3. Deprecated elements
    2. Differences in attributes
    3. Differences in availability
    4. Differences in metadata
    5. Differences in the text
    6. Differences in references
    7. Differences in tables
    8. Differences in images, objects and navigation maps
    9. Differences in forms
    10. Differences in stylesheets
    11. Differences in frames
    12. Differences in scripts
    13. Differences in internationalization
  2. Performance, Implementation, and Design Notes
    1. Notes on invalid documents
    2. Special characters in URI attribute values
      1. Non-ASCII characters in URI attribute values
      2. Ampersands in URI attribute values
    3. SGML implementation notes
      1. Line breaks
      2. Specifying non-HTML data
      3. SGML features with limited support
      4. Boolean attributes
      5. Marked Sections
      6. Processing Instructions
      7. Shorthand markup
    4. Notes on the search engines engines index your Web site
      1. Search robots
    5. Notes on tables
      1. Design rationale
      2. Recommended Layout Algorithms
    6. Notes on forms
      1. Incremental display
      2. Future projects
    7. Notes on scripting
      1. Reserved syntax for future script macros
    8. Notes on frames
    9. Notes on accessibility
    10. Notes on security
      1. Security issues for forms

Copyright © 1997 W3C ( MIT , INRIA , Keio )