The colors of this site are rendered correct in MS IE 4.0+, Opera 3.6x+ and Netscape 6.0+/ corresponding Mozilla browsers. This site works overall best with the newest Opera and Mozilla browsers (details). Also Netscape 6.1+, MS IE 5.5+ for Windows, MS IE 5.0 for Mac and new NeoPlanet browsers render this site quite well. The presentation is poor with Netscape 4.x and it has some clear rendering errors. It doesn't render either advisory titles of some elements and all internal links don't work.

I list below all topic groups, which I have done according to subjects, which they handle. You can return to this topic group by using this menu and the link Table of topic groups on the top of the each page.
Table of topic groupsFront page of help pages(X)HTML/WML tables - Notes > 1. Declarations, basic structure and head elements
1. Declarations, basic structure and head elements
?xml, !DOCTYPE These are encoding language and document type declarations.

Note, that they have a special character (! or ?) after the open delimiter < (? is used also before the close delimiter >), which separate them from elements (<? and <! are not legal in the names of elements). They can be called as declaration tags.

The ?xml declaration informs, that the document is an XML-document. It is not necessary in XHTML 1.0 documents, but because it is an XML-based language, it can be used. If XHTML document are delivered with the file extension xml, they might need also the xml-stylesheet declaration(s) after the xml-stylesheet declaration (for example <?xml-stylesheet type="text/css" href="xmlcss.css"?>). In addition XHTML has another declaration inside the element HTML, which use the same syntax as attributes. In general (all can't be used in XHTML 1.0) the XML-declaration can have following attributes, which are in fact a part of the declaration: version, standalone and encoding.

The XML-declaration is supported in MS IE 5.0+, Opera 4.x+ and Mozilla Gecko browsers (for example Netscape 6.x+). The same kind of tags as xml-declarations are used also in CGI (Common Gateway Interface) scripts, for example in PHP3 (<?php ... ?>; ASP and many other CGI-scripts use instead <% ... %>). They are called as processing instructions and xml-declarations don't belong among them. They use the same kind of syntax in order that the CGI-applications could separate them from elements.

From HTML 2.0 to XHTML 1.0 the purpose of the !DOCTYPE declaration is to identify the content of the document as conforming to a particular DTD specification. In future versions of XHTML it might refer also an-standard versions of XHTML. It doesn't have ordinary attributes (using the syntax attribute="value"), but only document type information, for example html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd". If the document type information has a web div, browsers can download the DTD-file into the memory. The declared DTD-file has sub-declarations (!ENTITY, !ELEMENT, !ATTLIST), which tell allowed elements, attributes and general entities.

Without it !DOCTYPE declaration the document can't be properly validated in the official W3C HTML validator (it validates also XHTML 1.0 documents). Also other online validator services and offline validator / tag checkers might need it. Even if it is not normally necessary, it is a good habit to use document type declarations.

HTML It belongs in the Modularization of XHTML to the Structure Module.

Basic elements of this module are HEAD, HTML, BODY and TITLE. It can have also BASE, LINK, META, SCRIPT and STYLE elements if also associated modules are selected.

XHTML 1.0 has only one xmlns information. XHTML can have more of them. In fact it is not an attribute, but a declaration, which use the same syntax as attributes.

Framesets belongs in the Modularization of XHTML to the Frames Module - when that module is selected, the minimal content model of the HTML element of the Structure Module is changed to (head, frameset).

If you want to understand historical points of views, look at the next note, which handles the HEADER element.

HEADER was a future planning for HTML 1.0.

HEADER was not in the first Dan Connolly's DTD for HTML from 1992 but it is used in a page of W3C, which handles the future directions after first Internet documents. That document uses also the NEXTID element, but it doesn't use the HTML element.

Dan's first DTD had the HTML element, but it didn't have a single gathering BODY element but one or more SECTION elements, which has partially the same task as with the DIV element in HTML 4.01.

All first were HTML-documents defective and we can call them as just pre-HTML documents. HTML 1.0 newer published. The first official HTML-version is HTML 2.0.

In practise HEADER was the same as HEAD and it had TITLE and NEXTID as the content. Presumably people thought, that HEADER doesn't sound good with BODY.
I have found also in a document element FOOTER. That document was created with Front Page 2.0. In principle it is logical pair to HEADER, but it is also an element, which should not be anymore used.

NEXTID is in historical reasons in HTML 2.0 and 3.0. The HTML 2.0 specification says about the NEXTID element following (I have added markup to the text):

The NEXTID element is included for historical reasons only. HTML documents should not contain NEXTID elements.

It is supported only in NeXT (NeXT Software, Inc.) by Tim Berners-Lee (he worked then at CERN). The initial world wide web program was developed in November of 1990. The program was a browser which also allowed WYSIWYG editing of world wide web documents.

The functionality of NEXTID can be achieved in principle with LINK element, but it doesn't work in common used web browsers. Look at possible value from Blooberry.

Other notes: HEAD, LINK, DIV.
WML notes: card.
Other pages: Help for HTML ALL menu ([S]).
W3C: DTD for HTML, HTML directions.
Blooberry: NEXTID, LINK.
It belongs in the Modularization of XHTML to the Structure Module.

The attribute profile gives possibility to create data profiles. In XHTML 1.0 xmlns only one namespace is allowed. XHTML 1.1 might allow to use several namespaces to the element HTML. which gives rich possibilities to tailor documents to different situations. Several namespaces share the same basic idea as different profiles.

XHTML 1.1 might support also so-called Schema Modules (XML schemas are 11/2000 at the candidate recommendation level). XML Schemas express shared vocabularies and allow machines to carry out rules made by people. They provide a means for defining the structure, content and semantics of XML documents.

Microsoft says, that it MS IE 5.0 supports XML schemas, but I have not examined, how the implementation conforms to the official recommendations of W3C (in most cases MS IE doesn't strictly conform XML recommendations).

TITLE It belongs in the Modularization of XHTML to the Structure Module.

Use character escapes, for example ä => &auml;. You can give short tips, for example "(frameset)", "(as pop-up auto-close window - don't close manually)". Don't however use too long titles, because the rest of it may not be readable.
In the first HTML-documents, the place of this element was not established (it was used also inside the BODY element).

Module notes: Structure Module.
Proprietary attributes ([Pw]).
Other notes: HTML.
W3C: Structure Module.
Blooberry: TITLE, Character Entities, Text (character escapes).
BODY It belongs in the Modularization of XHTML to the Structure Module.

Attributes onload and unload belong to event handlers of scripting languages. They belong in the Modularization of XHTML to the Intrinsic Events Module. Transitional attributes (background etc.) need in XHTML 1.1 the Legacy Module.

Most proprietary attributes are used to eliminate so-called browser offset. These attributes can be replaced with CSS and the author should define also corresponding CSS. New MS IE browsers don't need them, but Netscape 4.x needs the marginwidth and marginheight attributes to eliminate the browser offset. HTML 3.0 Draft has also the BANNER element.

Macromedia Dreamweaver 4.0 adds editor specific attributes (tracingsrc, tracingopacity), which don't work in any browser (at this matter it works like Adobe GoLive).

FRAMESET, FRAME, NOFRAMES Elements belong in the Modularization of XHTML to the Frames Module.

Attributes onload and unload belong to event handlers of scripting languages. They belong in the Modularization of XHTML to the Intrinsic Events Module.

The element FRAME supports use the usage of the attribute name, but in XHTML it needs also the attribute id at the same value.

Elements are supported by Mosaic 3.0b2+, Netscape 2.0+, MS IE 3.0a1+, Opera 2.1+. According my tests MS IE 5.5 doesn't support bordercolor and Mozilla Gecko browser don't support any proprietary attribute. The frameborder attribute is not supported in new Opera browsers. CSS for frameset elements works properly in my tests only in MS IE browsers.


CSACTIONS etc. are all created by Adobe's GoLive editors. They have no effect anywhere else. The CS refers to Adobe CyberStudio. In principle CSACTION etc. work together with the CSOBJ element and some attributes (data, target, h) in the body part of the document. Adobe create its own code also to the element AREA (and presumably also to the element A) element by adding csover/ csout attributes (the usage resemble to use onMouseOver and onMouseOut attributes). There might be more Adobe's GoLive specific elements and attributes, but because browsers don't understand them, it is not important to know all possible editor-specific attributes and elements.

Adobe's older editors PageMill and SiteMill created naturalsizeflag to the element IMG, which is non-sentential (normally harmless) attribute to other applications than Adobe's products. It is an editor-specific markup, which helps updating images of web documents.

Also other HTML-editor creates editor-specific encoding, for example MS FrontPage 4.0 (<style fprolloverstyle>) and Macromedia Dreamweaver 4.0 (tracingsrc and tracingopacity for BODY). They add however much less editor-specific markup than Adobe's GoLive.

WARNING. I my mind all kind of editor-specific markup violate trials to create common web standards. How especially Adobe is going to make in future documents, which which are conforming to a particular XHTML DTD specification? Adobe cause problems to authors, who want to create documents according existing W3C recommendations. Editors create also proprietary encoding for MS IE and Netscape browsers. Also that kind of encoding is problematic, but it however works in some browsers. But encodings, which works only in some Adobe's editors just increase unnecessary file sizes and they are harmful, if someone wants to validate his documents. The editors of Abode should have a FTP-application, which deletes automatic all editor-specific encoding, when pages are send to the Internet. Or all editor-specific encoding should be inside comment tags.

Attributes: CSACTIONS ([Pw]).
Other notes: BODY.
Other pages: Non-standard CSS ([S])
Blooberry: Naturalsizeflag.
BASE It belongs in the Modularization of XHTML to the Base Module.

The attribute target needs in XHTML 1.1 also the Target Module.

This element was in future planning for HTML 1.0.

Module notes: Base Module.
Proprietary attributes ([Pw]).
Other notes: HTML.
W3C: Base Module, Target Module.
Blooberry: BASE, Frame Targets.
It belongs in the Modularization of XHTML to the Link Module.

The attribute target needs in XHTML 1.1 the Target Module. In XHTML 1.1 can use also XLink extensions.

The attribute media is supported in MS IE 4.x+ and Opera 3.51+. Opera 3.51 supports all and screen and 4.x+ also print + projection. Opera 7.x+ and Mozilla Gecko browsers support also rel="alternate stylesheet". In my tests media="all" doesn't work in MS IE 5.5 because it skips files, which have it. Using CSS media rules with media blocks, in Opera 3.6x and MS IE 4.0x Win @media print {} affect also to the screen version. Media print must be first and then everything, which is defined to the printed version must be redefined to the screen version.

Navigation values (for example prev, help and index) for the attribute rel are supported in Opera 7.x and Mozilla Gecko browsers. They add a new navigation bar for them. I don't have found rev to be supported in those browsers.

Module notes: Link Module.
Proprietary attributes ([Pw]).
Other notes: HTML.
Other Pages: Definition methods ([S])
CSS notes 1.

W3C: Link Module, Target Module, XLink.
Blooberry: LINK, Frame Targets.
META It belongs in the Modularization of XHTML to the Metainformation Module.

The new attribute scheme is not supported. It belongs also WML. It might be in future useful in transformations, where the same document is delivered in multiple formats.

STYLE The STYLE element belongs in the Modularization of XHTML to the Stylesheet Module.
style The style attribute belongs in the Modularization of XHTML to the Style Attribute Module.

When then Stylesheet Module is used, it adds the STYLE element is added to the content model of the HEAD element of the Structure Module. The style attribute has an own module, because it is not recommended to use.

In HTML 3.2 STYLE is reserved for future use. The idea of use style sheets is older than HTML 3.2.

In HTML 3.0 the original idea to use style sheets was a lite version DSSSL (Document Style Semantics and Specification Language). It reserve possibility to use also some other style sheet languages and instead of DSSSL CSS became the used style sheet language.

<!-- + --> The special comment element is supported only in IE 1+ and MO 1+.

Use instead standard comments. MS IE 5.0 has also special comments, so called conditional blocks.
XML use the same kind of syntax to CDATA sections (they are not however comments but certain way parsed data).

Other pages: The basic structure of HTML and XML documents ([S] - explanations to CDATA sections).
Blooberry: COMMENT, Conditional Blocks, Miscellaneous Elements.
SCRIPT, NOSCRIPT They belong in the Modularization of XHTML to the Scripting Module.

When this module is used, the SCRIPT and NOSCRIPT elements are added to the Block and Inline content sets of the Text Module. Events attributes belong in the Modularization of XHTML to the Intrinsic Events Module. The transitional attribute language needs in XHTML 1.1 the Legacy Module.

NOSCRIPT is intended to give alternative content, if scripting is not supported or it is turned off.

In HTML 3.2 SCRIPT it is reserved for future use. Even if it is in HTML 3.2 reserved for future, it is widely supported in HTML 3.2 supporting browsers.

xml Supported only by MS IE 5.x.

Concerning XML, this resemble standard ways to use data islands, which use other namespace as the main document. The XHTML namespace may be used with other XML namespaces as per Namespaces in XML tells, although such documents are not strictly conforming XHTML 1.0 documents. These kinds of data islands use a specific embedded root element with the xmlns attribute (for example <book xmlns='urn:loc.gov:books'...>), not a generic element like MS IE 5.x even if the element xml can be understood to represent an arbitrary xml element. MS IE 5.0 use attributes ns and prefix, which were used in an obsolete namespace syntax before the official specification. An example of the old syntax can be found from the SMIL 1.0 documentation (Appendix: Extending SMIL 1.0): <?xml:namespace ns="http://www.acme.com/new-smil" prefix="new" ?>. According to the existing syntax it should be <smil xmlns:new="http://www.acme.com/new-smil">.

Normally additional namespaces are declared in the root element of the main document (concerning XHTML it is html). The Modularization of XHTML™ (it is a framework to all XHTML-based document type families) defines the standard ways to use additional elements and data islands in XHTML-documents. The first document type in this family is XHTML Basic™. I hope, that MS IE could support also standard implementations.

If this system is used inside HTML 4.01 or older document types, the system is at the basic level proprietary, because the whole idea to use XML data islands base on XML, not on HTML. Indeed Microsoft proposed it for W3C and it has been discussed (it has for example a meeting report), if the xml element could be added into future versions of HTML in order to add XML data islands into HTML-document. Because W3C never published HTML 5.0 but instead of it XHTML-specifications, the solution of MS remains non-standard (proprietary). MS IE 5.x supports also reserved attributes, which were only reserved for future use, but never actually implemented in any HTML versions. MS IE supports then some features of an imaginary HTML 5.0 specification. This is a good example, how Microsoft commonly works. Microsoft has a huge tendency to come up with ideas, or see ideas, and adopt them whenever they see fit, without waiting for the W3C to make up their mind.

Attributes ([Pw]).
Other notes: HTML, HEAD, reserved attributes.
WML notes: card.
W3C: Document Object Model (DOM) Requirements (W3C Working Draft 19 April, 2001), Namespaces in XML, Modularization of XHTML™, XML in HTML Meeting Report (W3C Note 11 May 1998), XHTML Basic™, SMIL 1.0.
Blooberry: Xml, Miscellaneous Elements.
Copyrights Tapio Markula 1999-2001 (@dnainternet.net) - not into the public use without the permission (add to beginning of the e-mailaddress my name, Tapio Markula, separated with a comma).
Information about browsers, which render or print this site best.
Help pages has been last edited 09.09.2003

[Get Opera!] [Get Mozilla!]