Changes between HTML 3.2 and HTML 4.0
Changes to elements
The new elements in this version of HTML are
The following elements are now deprecated:
The following elements are now obsolete:
LISTING. For all of them, you should use the
PRE element instead.
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 been extended in response to requests from information providers for
improved control over the presentation of tabular information:
- The ability to align on designated characters such as "." and":"
(e.g., aligning a column of numbers on the decimal point).
- The need for more flexibility in specifying table frames and rules.
- The need for incremental display of large tables as data is received.
- The ability to support scrollable tables with fixed headers plus better
support for breaking tables across pages for printing.
- The need for optional column based defaults for alignment properties
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 attribute compatible
with the latest versions of the most popular browsers. Some clarifications
have been made to the role of the
dir attribute 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
rules="basic" replaced by
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.
rules attributes have been modified to
avoid SGML name clashes with each other, and to avoid clashes with the
valign attributes. These changes were
additionally motivated by the desire to avoid future problems if this
specification is extended to allow
rules attributes with other table
The forms specified in HTML 3.2 have the following problems:
- There is no provision for keyboard shortcuts for particular actions, for
access keys for driving menus, etc.
- Although form controls can be made insensitive dynamically, they cannot
be declared as such at initialization time.
- Along the same line form controls, such as form fields, cannot be made
- Labels for radio buttons and checkboxes are not sensitive, i.e.,
clicking on a label text doesn't effect the button state.
- There is no way to markup groups of related form fields in a way that
effectively supports browsing with speech-based user agents.
- There is no provision for checking values as they are entered into form
fields. All checking is done at the server when the form's contents are
- Nothing is provided to specify what type of data file is expected when
the user is asked to submit files.
- Forms can only contain the two buttons submit and reset.
- There is no way to specify what character sets the server issuing a form
To solve these problems this specification introduces several new
attributes and elements.
accesskey attribute provides for
specifying direct keyboard access to form fields.
disabled attribute allows form
providers to make a form control initially insensitive.
- And with the additional attribute
readonly, authors can prohibit changes
to a form field.
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, including
onchange-INPUT, in association with support for
scripting languages, allows form providers to verify user-entered data.
INPUT element has a new attribute
accept that allows authors to specify a
list of valid media types or type patterns for the input.
- The new
BUTTON element can be used to make richer
forms with more than just a submit and a reset button.
FORM element includes the attribute
accept-charset, modeled on the HTTP
"Accept-Charset" header (see
This attribute (first proposed in
may be used to specify a list of character sets acceptable to the server.