## The Bare Bones Guide to HTML

by Kevin Werbach

# I N T R O D U C T I O N

## Credit where credit is due

Many people have provided suggestions and assistance on earlier versions, including:

Jutta Degener Henry Churchyard John Berkin Larry Katz N.J. Taber Dean Hedman Nick Galbreath | R. Alan Monroe Ann Lynnworth Mike Kelsey Russ Allbery dolphin@eccosys.com Susan Hagan John Van Essen

## What is unique about this guide

Several people have created excellent HTML guides and made them available on the Web -- who needs another one?

This document is designed to serve a particular niche. It is intended as a concise "cheat sheet" that you can use to look up the correct forms of tags as you are creating Web pages. Other HTML guides provide significantly more descriptive material about how to use particular tags or how HTML works in general. If you are a beginner, you might try one of those guides first.

There are also several style guides that focus more on how to write pages that look good and work on different browsers. I encourage you to read one or more of them if you are planning on creating Web pages; far too many people ignore the fact that their pages are going to be read by other people and that there are better and worse ways of doing things.

My WWW Help Page has links to numerous other sites that provide information on HTML and Web page design. It's a good place to start if you have specific questions that go beyond the "bare bones" information provided here.

This guide is designed for people who know enough not to need step-by-step instructions, but who haven't memorized the exact format of every HTML tag yet. If you want a "quick reference" that you can glance at without having to read through additional descriptive material, this guide is for you.

## Which tags are included

The other distinguishing aspect of this guide is what it includes. The Bare Bones Guide to HTML is intended to include all of the tags in common usage on Web pages today. Specifically, the Guide lists the following:

- HTML 3.2 tags
- Netscape extensions to HTML

The development of HTML has been a confusing process, as attempts to adopt formal standards have often been overrun by developments in the marketplace. The World Wide Web Consortium (W3C) is the official standards body for HTML. In May 1996, W3C released the HTML 3.2 draft, which was designed to reflect and standardize generally-accepted practices at that time.

In its Position Statement on HTML, W3C recommends that information providers use the HTML 3.2 specification. Therefore, version 3.0 of the Bare Bones Guide to HTML includes all the HTML 3.2 tags, whether they were originally introduced as part of the HTML 2.0 or HTML 3.0 proposals, or as Netscape extensions to HTML. The current versions of major browsers should support all, or virtually all, these tags.

I have also included all of the Netscape tags introduced with Netscape Navigator up to version 3.0b5, with the exception of some server interaction tags such as server push animation. Some of these extensions will not display properly if people viewing your pages are using another browser, so you should think about your audience before deciding whether to use them.

### FORMATTING OF THIS DOCUMENT

For clarity, I have separated out different attributes that can be applied to the same tag onto separate lines. Generally, multiple attributes can be combined in the same tag.

Tags are listed in upper case for ease of reading, although most tags are not case sensitive.

### SYMBOLS USED

    URL    URL of an external file (or just file name if in the same directory)
    ?      Arbitrary number (i.e. <H?> means <H1>, <H2>, <H3>, etc.)
    %      Arbitrary percentage (i.e. <hr align=left width="%"> means <hr align=left width="50%">, etc.)
    ***    Arbitrary text (i.e. ALT="***" means fill in with text)
    $$$$$$ Arbitrary hex (i.e. BGCOLOR="#$$$$$$" means BGCOLOR="#00FF1C", etc.)
    ,,,    Comma-delimited (i.e. COORDS=",,," means COORDS="0,0,50,50", etc.)
    |      Alternatives (i.e. ALIGN=LEFT|RIGHT|CENTER means pick one of these)
    [*]    Link to an annotation

### COMPATIBILITY

(remember, HTML is evolving and browser implementations vary)

           (no notation) In the HTML 3.2 spec.; should work on current browsers
    N1.0   Netscape extension introduced with Navigator version 1.0
    N1.1   Netscape extension introduced with Navigator version 1.1
    N2.0   Netscape extension introduced with Navigator version 2.0
    N3.0b  Netscape extension introduced with Navigator version 3.0 beta

## Version History

Version 3.0 -- July 21, 1996.

- Updated everything to conform to the HTML 3.2 specification.
- Added a new section for Java tags supported by HTML 3.2
- Revised the introductory material and annotations.
- Redesigned the layout of the "tables" version, in order to make it easier to read.
- All major browsers now support tables, so to save time I have decided to eliminate the separate non-table "HTML" version of the Guide, and to rename the "tables" version as the "formatted" version. Users who cannot view this version can still use the "plain text" version.
- Added the new tags implemented by beta versions of Netscape Navigator 3.0 up to 3.0b5, including:
  - table cell colors
  - multi-column text
  - spacers
  - frame border control
  - strikeout via the <S> tag and underlining via the <U> tag. These were in HTML 3.0 but not HTML 3.2, so I list them as Netscape extensions.
  - the FACE attribute for the <FONT> tag (originally a Microsoft extension)
- Fixed more typos.

Version 2.0 -- October 7, 1995. Lots of changes and corrections in this version.

- Rewrote the introductory material and compatibility table language
- Added + notation for Netscape extensions that have been adopted by most major browsers. This notation is by nature approximate; it represents my judgment about which tags have are widely supported even though they are not (and may never be) in HTML 3.0.
- Added ,,, notation in table of symbols for comma-delimited lists.
- Restructured the Hard Formatting and Soft Formatting sections into Presentation Formatting and Structural Definition. This change makes clear the important distinction between presentation-based and structural markup. A few tags have been moved around as a result of this change, and the <ADDRESS> tag has been moved up from Miscellaneous into Structural Definition.
- Eliminated the Alignment section by shifting the tags listed there into either Structural Definition or Presentation Formatting. Although this results in the Netscape <CENTER> tag being split up from the other alignment tags, it allows the alignment attributes of tags such as <P> and <H?> to be associated with the underlying tags they operate on. This change is consistent with the HTML 3.0 philosophy of handling alignment through attributes to existing tags rather than through dedicated tags.
- Added listing for Netscape client pull animation (this has been around since Netscape 1.1, but was not listed in the Guide).
- Support for new Netscape and HTML 3.0 tags implemented in Netscape 2.0:
  - Frames (added a whole new section)
  - Embedded Objects (in Links and Graphics)
  - Divisions (in Structural Definition)
  - Font Color (in Presentation Formatting)
  - Big/Small font size (in Structural Definition)
  - Superscript/Subscript (in Presentation Formatting)
  - File Upload (in Forms)
  - Text wrap (in Forms)
  - Target Windows (in Links and Graphics) and Base Target (in Miscellaneous)
  - Client-side imagemaps (in Links and Graphics)
- Removed <XMP> tag, because I have been convinced that it is archaic.
- Moved prologue tags to Miscellaneous section, to indicate that they are not required and reduce confusion.
- Fixed listing for <NOBR> container by adding a closing tag
- Changed "outline type" to "numbering type" for Netscape extension to ordered lists, in order to avoid confusion about what this attribute does.
- Changed wording of <P> tag description to indicate that it is "usually" rendered as a double return.
- Changed notation for hex triplet from $$$ to $$$$$$ to indicate that six characters are required to reference the three hex values.
- improved consistency of column alignment in the text version.

Version 1.22 -- August 18, 1995. Added a tag and some attributes that had been accidentally omitted from the forms section, and corrected the listing of which color tags are in the HTML 3.0 spec.

Version 1.21 -- July 26, 1995. Removed the archaic <NEXTID> tag and added some annotations to the HTML and table versions.

Version 1.2 -- July 25, 1995. Several revisions to improve compliance with the official HTML specifications, and to acknowledge more widespread implementation of certain HTML 3.0 tags.

Version 1.1 -- July 19, 1995. Cleaned up a number of things in the introductory material, and correctly specified the ISO 8859-1 character set instead of ASCII.

Version 1.03 -- July 12, 1995. Updated copyright notices to eliminate confusion with Bare Bones Software. Added Netscape relative font sizing tag, and changed the link to the list of ASCII symbol codes.

Version 1.02 -- April 24, 1995. Corrected some additional typos, fixed the link to this version history, and added the standard copyright and registered TM codes to go along with the Netscape versions.

Version 1.01 -- April 11, 1995. Fixed a couple minor typos and ambiguities pointed out by helpful folks, including some errors in the list tags section.

Version 1.0 HTML -- April 6, 1995. Has some additional introductory material, but the text is otherwise identical to version 1.0. Formatted for WWW viewing, with assistance from John Berkin.

Version 1.0 -- April 2, 1995. Corrected some errors pointed out by other people, and made some minor revisions to the introduction and the formatting of certain sections.

Version 0.9b -- March 30, 1995. First public version. Posted on comp.infosystems.www.providers.

Copyright ©1995, 1996 Kevin Werbach.
Last updated July 21, 1996.

My thanks to Kevin Werbach for allowing this excellent reference to be included as a part of these tutorials. -Joe Barta