Contents
This section of the specification discusses some HTML elements and attributes that may be used for visual formatting. Generally speaking you are recommended to use style sheets instead. An exception is when dealing with user agents that either don't support style sheets or which don't support the particular style sheet features needed. A number of HTML 4.0 elements and attributes dealing with visual presentation are deprecated and may become obsolete in future versions of HTML.
Attribute definitions
This attribute sets the background color of the canvas for the document body (the BODY element) or for tables (the TABLE, TR, TH, and TD elements). Additional attributes for specifying text color can be used with the BODY element.
This attribute has been deprecated in favor of style sheets for specifying background color information.
It is possible to align block elements on the canvas (tables, images, objects, paragraphs, etc.) with the align element. Although this attribute may be set for many HTML elements, its range of possible values sometimes differs from element to element.
Attribute definitions
DEPRECATED EXAMPLE:
This example centers a heading on the canvas.
<H1 align="center"> How to Carve Wood </H1>
Using cascading style sheets, for example, you could achieve the same effect as follows:
<HEAD> <STYLE> H1 { text-align: center} </STYLE> </HEAD> <H1> How to Carve Wood </H1>
Note that this would center all H1 declarations. You could reduce the scope of the style by setting the id attribute on the element:
<HEAD> <STYLE type="text/css"> H1.wood {text-align: center} </STYLE> </HEAD> <H1 id="wood"> How to Carve Wood </H1>
Similarly, to double justify a paragraph on the canvas with HTML's align attribute:
<P align="justify">...Lots of paragraph text...
which, in cascading style sheets, would be:
<HEAD> <STYLE type="text/css"> P.mypar {text-align: justify} </STYLE> </HEAD> <P id="mypar">...Lots of paragraph text...
To double justify a series of paragraphs, group them with the DIV element:
<DIV align="justify"> <P>...text in first paragraph... <P>...text in second paragraph... <P>...text in third paragraph... </DIV>
With cascading style sheets, this would be:
<HEAD> <STYLE type="text/css"> DIV.mypars {text-align: justify} </STYLE> </HEAD> <DIV id="mypars"> <P>...text in first paragraph... <P>...text in second paragraph... <P>...text in third paragraph... </DIV>To justify the entire document with cascading style sheets: <HEAD> <STYLE type="text/css"> BODY {text-align: justify} </STYLE> </HEAD> <BODY> ...the body is justified... </BODY>
The CENTER element is exactly equivalent to specifying the DIV element with the align attribute set to "center". The CENTER element is deprecated.
Images and objects may appear directly "in-line" or may be floated to one side of the page, temporarily altering the margins of text that may flow on either side of the object.
The align attribute for objects, images, frames, etc., floats the object to either the left or right margin. Floating objects generally begin a new line. This attribute takes the following values to float an object:
The following example shows how to float an IMG element to the current left margin of the canvas.
<IMG align="left" src="http://foo.com/animage.gif">
Another attribute, defined for the BR element, controls text flow around floating objects.
Attribute definitions
Consider the following visual scenario, where text flows to the right of an image until a line is broken by a BR:
********* ------- | | ------- | image | --<BR> | | *********
If the clear attribute is set to none, the line following BR will begin immediately below it at the right margin of the image:
********* ------- | | ------- | image | --<BR> | | ------ *********
If the clear attribute is set to left or all, next line will appear as follows:
********* ------- | | ------- | image | --<BR clear="left"> | | ********* -----------------
Using style sheets, you could specify that all line breaks should behave this way for objects (images, tables, etc.) floating against the left margin. In cascading style sheets, you could achieve this as follows:
<STYLE type="text/css"> BR {clear: left} </STYLE>
To specify this behavior for a specific instance of the BR element, you could combine style information and the id attribute:
<HEAD> ... <STYLE type="text/css"> BR.mybr {clear: left} </STYLE> </HEAD> <BODY> ... ********* ------- | | ------- | table | --<BR id="mybr"> | | ********* ----------------- ... </BODY>
The following HTML elements specify font information. Although they are not all deprecated, their use is discouraged in favor of style sheets.
<!ENTITY % font "TT | I | B | U | S | STRIKE | BIG | SMALL"> <!ELEMENT (%font|%phrase) - - (%inline)*> <!ATTLIST (%font|%phrase) %attrs; -- %coreattrs, %i18n, %events -- >
Start tag: required, End tag: required
Attributes defined elsewhere
Rendering of font style elements depends on the user agent. The following is an informative description only.
The following sentence shows several types of text:
<b>bold</b>, <i>italic</i>, <b><i>bold italic</i></b>, <tt>teletype text</tt>, and <big>big</big> and <small>small</small> text.
Your browser renders the words as follows:
bold, italic, bold italic, teletype text, and big and small text.
It is possible to achieve a much richer variety of font effects using style sheets. To specify blue, italic text in a paragraph with cascading style sheets:
<HEAD> <STYLE> P.mypar {font-style: italic; color: blue} </STYLE> </HEAD> <P id="mypar">...Lots of blue italic text...
Font style elements may be nested and they must be properly nested. Rendering of nested font style elements depends on the user agent.
FONT and BASEFONT are deprecated.
<!ELEMENT FONT - - (%inline)* -- local change to font --> <!ATTLIST FONT size CDATA #IMPLIED -- [+]nn e.g. size="+1", size=4 -- color CDATA #IMPLIED -- #RRGGBB in hex, e.g. red: "#FF0000" -- face CDATA #IMPLIED -- comma separated list of font names -- >
Start tag: required, End tag: required
<!ELEMENT BASEFONT - O EMPTY> <!ATTLIST BASEFONT size CDATA #REQUIRED -- base font size for FONT elements -- color CDATA #IMPLIED -- #RRGGBB in hex, e.g. red: "#FF0000" -- face CDATA #IMPLIED -- comma separated list of font names -- >
Start tag: required, End tag: forbidden
Attribute definitions
The FONT element changes the font size and color for text in its contents.
The BASEFONT element sets the base font size (using the size attribute). Font size changes achieved with FONT are relative to the base font size set by BASEFONT. If BASEFONT is not used, the default base font size is 4.
DEPRECATED EXAMPLE:
The following example will show the difference between the seven
font sizes available with FONT:
<P><font size=1>size=1</font> <font size=2>size=2</font> <font size=3>size=3</font> <font size=4>size=4</font> <font size=5>size=5</font> <font size=6>size=6</font> <font size=7>size=7</font>
Your user agent renders this as follows:
size=1 size=2 size=3 size=4 size=5 size=6 size=7
The following shows the effect of relative font sizes using a base font size of 3:
The same thing with a base font size of 6:
The base font size does not apply to headings, except where these are modified using the FONT element with a relative font size change.
<!ELEMENT HR - O EMPTY> <!ATTLIST HR %coreattrs; -- id, class, style, title -- %events; align (left|right|center) #IMPLIED noshade (noshade) #IMPLIED size %Pixels #IMPLIED width %Length #IMPLIED >
Start tag: required, End tag: forbidden
Attribute definitions
Attributes defined elsewhere
The HR element causes a horizontal rule to be rendered by visual user agents.
The amount of vertical space inserted between a rule and the content that surrounds it depends on the user agent.
DEPRECATED EXAMPLE:
This
example centers the rules, sizing them to half the available width between
the margins. The top rule has the default thickness while the bottom two
are set to 5 pixels. The bottom rule should be rendered in a solid color
without shading:
<HR width="50%" align="center"> <HR size="5" width="50%" align="center"> <HR noshade size="5" width="50%" align="center">
Your browser renders these rules as follows: