22 Transitional Document Type Definition

 <! - This HTML 4.0 Strict DTD excludes attributes and view elements, the use of which is gradually phased out to determine the style of the W3C.  Authors should use the Strict DTD whenever possible, but if it is necessary to support attributes and view elements, the Transitional DTD is allowed.  HTML 4.0 includes mechanisms for supporting stylesheets, scripts, object implementations, improved support for the direction of text from right to left and mixed text, and changes in forms to ensure the convenience of users with physical disabilities.  Draft: $ Date: 1997/12/18 09:36:02 $ Authors: Dave Raggett <[email protected]> Arno Le Ors <[email protected]> Jan Jacobs <[email protected]> Detailed information about HTML 4.0 can be found at: http://www.w3.org/TR/REC-html40 -> <! ENTITY% HTML.Version "- // W3C // DTD HTML 4.0 Transitional // EN" - An example of a typical Use: <! DOCTYPE HTML PUBLIC "- // W3C // DTD HTML 4.0 Transitional // EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> <html> <head> ... </ head> <body> ... </ body> </ html> The URI used as the system identifier allows the user agent to load the necessary DTDs and combination sets.  FPI for Strict HTML 4.0 DTD: "- // W3C // DTD HTML 4.0 // EN" its URI: http://www.w3.org/TR/REC-html40/strict.dtd Authors should use Strict DTD if Only they do not need to use view management for user agents that do not support (in an adequate way) style sheets.  If you are creating a document with frames, use the following FPI: "- // W3C // DTD HTML 4.0 Frameset // EN" and URI: http://www.w3.org/TR/REC-html40/frameset.dtd For To HTML 4.0, the following URIs are supported: " http://www.w3.org/TR/REC-html40/strict.dtd " (Strict DTD) " http://www.w3.org/TR/REC-html40/loose. Dtd "(Loose DTD)" http://www.w3.org/TR/REC-html40/frameset.dtd "(Frameset DTD)" http://www.w3.org/TR/REC-html40/HTMLlat1. Ent "(Latin-1 entities)" http://www.w3.org/TR/REC-html40/HTMLsymbol.ent "(Symbol entities)" http://www.w3.org/TR/REC-html40/ HTMLspecial.ent "(Special entities) These URIs point to the latest version of each file.  To link to a special version, use the following URIs: " http://www.w3.org/TR/REC-html40-971218/strict.dtd " " http://www.w3.org/TR/REC-html40-971218 /loose.dtd "" http://www.w3.org/TR/REC-html40-971218/frameset.dtd "" http://www.w3.org/TR/REC-html40-971218/HTMLlat1.ent "" Http://www.w3.org/TR/REC-html40-971218/HTMLsymbol.ent "" http://www.w3.org/TR/REC-html40-971218/HTMLspecial.ent "-> <! - ================== Imported names ========================== ========== -> <! ENTITY% ContentType " CDATA " - device type according to [RFC2045] -> <! ENTITY% ContentTypes " CDATA " is a comma-separated list of device types in According to [RFC2045] -> <! ENTITY% Charset " CDATA " - character encoding according to [RFC2045] -> <! ENTITY% Charsets " CDATA " is a space-separated list of character encodings in accordance with [RFC2045] -> <! ENTITY% LanguageCode " NAME " - the language code according to [RFC1766] -> <! ENTITY% Character " CDATA " is a single character [ISO10646] -> <! ENTITY% LinkTypes " CDATA " - space separated list of reference types -> <! ENTITY% MediaDesc " CDATA " - separate device descriptor or comma-separated list -> <! ENTITY% URI " CDATA " - universal resource identifier, see [URI] - -> <! ENTITY% Datetime " CDATA " - information about the date and time.  ISO date format -> <! ENTITY% Script " CDATA " - script expression -> <! ENTITY% StyleSheet " CDATA " - style sheet data -> <! ENTITY% FrameTarget " CDATA " is the representation in this frame -> <! ENTITY% Text " CDATA "> <! - Parameter combinations -> <! ENTITY% head.misc " SCRIPT | STYLE | META | LINK | OBJECT " - duplicate title elements -> <! ENTITY % Heading " H1 | H2 | H3 | H4 | H5 | H6 "> <! ENTITY% list " UL | OL | DIR | MENU "> <! ENTITY% preformatted " PRE "> <! ENTITY% Color " CDATA " - A color using sRGB: #RRGGBB as Hex values ​​-> <! - 16 well-known color names and their values ​​RGB: Black (black) = # 000000 Green (green) = # 008000 Silver (silver) = # C0C0C0 Lime Lemon) = # 00FF00 Gray = # 808080 Olive = # 808000 White = #FFFFFF Yellow = # FFFF00 Maroon (brown) = # 800000 Navy (blue) = # 000080 Red (red) ) = # FF0000 Blue = # 0000FF Purple = # 800080 Teal = # 008080 Fuchsia = # FF00FF Aqua (turquoise) = # 00FFFF -> <! ENTITY% bodycolors "bgcolor % Color;
  #IMPLIED - the background color of the document - text % Color;
  #IMPLIED - the text color of the document - link % Color;
  #IMPLIED - link color - vlink % Color;
  #IMPLIED - the color of the referenced links - alink % Color;
  #IMPLIED - the color of the selected links - "> <! - ================ Combinations of character mnemonics ================ ========= -> <! ENTITY% HTMLlat1 PUBLIC "- // W3C // ENTITIES Latin1 // EN // HTML" "http://www.w3.org/TR/REC-html40 -971218 / HTMLlat1.ent "> % HTMLlat1; <! ENTITY% HTMLsymbol PUBLIC" - // W3C // ENTITIES Symbols // EN // HTML "" http://www.w3.org/TR/REC-html40- 971218 / HTMLsymbol.ent "> % HTMLsymbol; <! ENTITY% HTMLspecial PUBLIC" - // W3C // ENTITIES Special // EN // HTML "" http://www.w3.org/TR/REC-html40-971218 /HTMLspecial.ent "> % HTMLspecial; <! - =================== General Attributes ================ =============== -> <! ENTITY% coreattrs " id ID #IMPLIED - unique identifier within the document - class CDATA #IMPLIED - space-separated list of classes - style % StyleSheet;
  #IMPLIED - related style information - title % Text;
  #IMPLIED - recommended title / gain - "> <! ENTITY% i18n " lang % LanguageCode;
  #IMPLIED - language code - dir (ltr | rtl) #IMPLIED - direction of weak / neutral text - "> <! ENTITY% events " onclick % Script;
  #IMPLIED - click the button of the pointing device - ondblclick % Script;
  #IMPLIED - double click of the button of the pointing device - onmousedown % Script;
  #IMPLIED - the button of the pointing device is pressed - onmouseup % Script;
  #IMPLIED - the button of the pointing device is released - onmouseover % Script;
  #IMPLIED - the pointer is moved to - onmousemove % Script;
  #IMPLIED - the pointer is moved to the limits - onmouseout % Script;
  #IMPLIED - pointer moved outside - onkeypress % Script;
  #IMPLIED - the key is pressed and released - onkeydown % Script;
  #IMPLIED - the key is pressed - onkeyup % Script;
  #IMPLIED - the key is released - "> <! - Reserved capabilities switch -> <! ENTITY% HTML.Reserved " IGNORE "> <! - The following attributes are reserved, and, possibly, will be used in the future -> <! [ % HTML.Reserved; [<! ENTITY% reserved " datasrc % URI;
  #IMPLIED - a one or more data sources - datafld CDATA #IMPLIED - name of the property or column - dataformatas (plaintext | html) plaintext - text or html - ">]]> <! ENTITY% reserved" " > <! ENTITY% attrs " % rootattrs;
  % I18n;
  % Events;
  #IMPLIED "- left by default for paragraphs with a direction from left to right, right for a direction from right to left--> <! - =========================================================================================== ============== Layout ================================== ==== -> <! ENTITY% fontstyle " TT |  I |  B |  U |  S |  STRIKE |  BIG |  SMALL "> <! ENTITY% phrase " EM |  STRONG |  DFN |  CODE |  SAMP |  KBD |  VAR |  CITE |  ABBR |  ACRONYM "> <! ENTITY% special " A |  IMG |  APPLET |  OBJECT |  FONT |  BASEFONT |  BR |  SCRIPT |  MAP |  Q |  SUB |  SUP |  SPAN |  BDO |  IFRAME "> <! ENTITY% formctrl " INPUT |  SELECT |  TEXTAREA |  LABEL |  BUTTON "> <! - % inline; built-in elements or text-level elements -> <! ENTITY% inline " #PCDATA |  % Fontstyle;
  | | |  % Phrase;
  | | |  % Special;
  | | |  % Formctrl;
  "> <! ELEMENT ( % fontstyle; | % phrase; ) - - ( % inline; ) *> <! ATTLIST ( % fontstyle; | % phrase; ) % attrs; - % coreattrs , % i18n , % events - > <! ELEMENT ( SUB | SUP ) - - ( % inline; ) * - upper and lower index -> <! ATTLIST (SUB | SUP) % attrs; - % coreattrs , % i18n , % events -> <! ELEMENT SPAN - - ( % inline; ) * - common language / style container -> <! ATTLIST SPAN % attrs; - % coreattrs ; % i18n ; % events - % reserved; - reserved for use in Future -> <! ELEMENT BDO - - ( % inline; ) * - redefinition of BiDi internationalization -> <! ATTLIST BDO % coreattrs; - id, class, style, title - lang % LanguageCode; #IMPLIED - Language code - dir (ltr | rtl) #REQUIRED - direction -> <! ELEMENT BASEFONT - O EMPTY - basic font size -> <! ATTLIST BASEFONT id ID #IMPLIED - unique identifier within the document - Size CDATA #REQUIRED - base font size for FONT elements - color % Color; #IMPLIED - text color - face CDATA #IMPLIED - comma-separated list of font names -> <! ELEMENT FONT - - ( % inline;
  ) * - Locally switch to font -> <! ATTLIST FONT % coreattrs;
  - id, class, style, title - % i18n;
  - lang, dir - size CDATA #IMPLIED - [+ | -] nn, for example, size = "+ 1", size = "4" - color % Color;
  #IMPLIED - text color - face CDATA #IMPLIED - comma-separated list of font names -> <! ELEMENT BR - O EMPTY - force a new line -> <! ATTLIST BR % coreattrs;
  - id, class, style, title - clear (left | all | right | none) none - control the flow of text -> <! - ================ == Content Models HTML =============================== -> <! - HTML has two main content models : % Inline;
  Character level elements and text strings % block;
  Elements of the block type, for example, paragraphs and lists -> <! ENTITY% block "P | % heading; | % list; | % preformatted; | DL | DIV | CENTER | NOSCRIPT | NOFRAMES | BLOCKQUOTE | FORM | ISINDEX | HR | TABLE | FIELDSET | ADDRESS "> <! ENTITY% flow " % block; | % inline; "> <! - =================== Body of the document ==== ================================ -> <! ELEMENT BODY OO ( % flow; ) * + (INS | DEL) - body of the document -> <! ATTLIST BODY % attrs;
  - % coreattrs , % i18n , % events - onload % Script;
  #IMPLIED - the document is loaded - onunload % Script;
  #IMPLIED - document deleted - background % URI;
  #IMPLIED - texture for document background - % bodycolors;
  - bgcolor, text, link, vlink, alink -> <! ELEMENT ADDRESS - - (( % inline; ) | P) * - information about the author -> <! ATTLIST ADDRESS % attrs;
  - % coreattrs , % i18n , % events -> <! ELEMENT DIV - - ( % flow; ) * - common language / style container -> <! ATTLIST DIV % attrs;
  - % coreattrs , % i18n , % events - % align;
  - text alignment - % reserved;
  - reserved for future use -> <! ELEMENT CENTER - - ( % flow; ) * - short for DIV align = center -> <! ATTLIST CENTER % attrs;
  - % coreattrs , % i18n , % events -> <! - ================== Element of the anchor ============= =================== -> <! ENTITY% Shape "(rect | circle | poly | default)"> <! ENTITY% Coords " CDATA " - split Comma-separated list of lengths -> <! ELEMENT A - - ( % inline; ) * - (A) - anchor -> <! ATTLIST A % attrs;
  - % coreattrs , % i18n , % events - charset % Charset;
  #IMPLIED - encoding of the linked resource - type % ContentType;
  #IMPLIED - recommended content type - name CDATA #IMPLIED - end of the named link - href % URI;
  #IMPLIED - URI of the associated resource - hreflang % LanguageCode;
  #IMPLIED - language code - target % FrameTarget;
  #IMPLIED - generate in this frame - rel % LinkTypes;
  #IMPLIED - direct link types - rev % LinkTypes;
  #IMPLIED - types of backlinks - accesskey % Character;
  #IMPLIED - access key - shape % Shape;
  Rect - for use with client navigation maps - coords % Coords;
  #IMPLIED - for use with client navigation maps - tabindex NUMBER #IMPLIED - position in the navigation sequence - onfocus % Script;
  #IMPLIED - the focus shifted to the element - onblur % Script;
  #IMPLIED - the focus is gone from the element -> <! - ================== Client navigational charts ============== ============== -> <! - They can be placed in the same document or placed in a separate document, although this is not yet universally supported -> <! ELEMENT MAP - - (( % Block; ) + | AREA +) - client navigation map -> <! ATTLIST MAP % attrs;
  - % coreattrs , % i18n , % events - name CDATA #REQUIRED - used in usemap -> <! ELEMENT AREA - O EMPTY - client navigation map area -> <! ATTLIST AREA % attrs;
  - % coreattrs , % i18n , % events - shape % Shape;
  Rect - controls the interpretation of coordinates - coords % Coords;
  #IMPLIED - a comma-separated list of lengths - href % URI;
  #IMPLIED - URI of the associated resource - target % FrameTarget;
  #IMPLIED - generate in this frame - nohref (nohref) #IMPLIED - this action is not related to this region - alt % Text;
  #REQUIRED - short description - tabindex NUMBER #IMPLIED - position in the transition sequence - accesskey % Character;
  #IMPLIED - access key - onfocus % Script;
  #IMPLIED - the focus shifted to the element - onblur % Script;
  #IMPLIED - the focus is off the element -> <! - ================== Link Element =============== =================== -> <! - The relationship values ​​can be used mainly: a) for the toolbars / menus in the document when used with the LINK element in the document header (For example, start, content, back, next, pointer, end, help b) to link to a separate stylesheet (rel = stylesheet) c) to set a reference to the script (rel = script) d) in style sheets to control the view of the set Html nodes in printed versions of documents; e) for linking to the printed version of this document, for example, to a version in the format postscript or pdf (rel = alternate media = print) -> <! ELEMENT LINK - O EMPTY - -> <! ATTLIST LINK % attrs;
  - % coreattrs , % i18n , % events - charset % Charset;
  #IMPLIED - encoding of the linked resource - href % URI;
  #IMPLIED - URI of the associated resource - hreflang % LanguageCode;
  #IMPLIED - language code - type % ContentType;
  #IMPLIED - recommended content type - rel % LinkTypes;
  #IMPLIED - direct link types - rev % LinkTypes;
  #IMPLIED - types of backlinks - media % MediaDesc;
  #IMPLIED - for presentation on these devices - target % FrameTarget;
  #IMPLIED - generate in this frame -> <! - =================== Images =============== ============================ -> <! - Length specified in strict DTD for cellpadding / cellspacing -> <! ENTITY% Length " CDATA " - nn in pixels or nn% in percent -> <! ENTITY% MultiLength " CDATA " - pixels, percent or relative -> <! ENTITY% MultiLengths " CDATA " - a comma-separated list of MultiLength -> <! ENTITY% Pixels " CDATA " - an integer representing the length in pixels -> <! ENTITY% IAlign "(top | middle | bottom | left | right) - center?  -> <! - To avoid problems with only user test agents, and make images accessible and useful to users with non-visual agents, you need to define descriptions in the ALT attribute and not use server map images -> <! ELEMENT IMG - O EMPTY - embedded image -> <! ATTLIST IMG % attrs;
  - % coreattrs , % i18n , % events - src % URI;
  #REQUIRED - the URI of the embedded image - alt % Text;
  #REQUIRED - short description - longdesc % URI;
  #IMPLIED - reference to a long description (supplements alt) - height % Length;
  #IMPLIED - height override - width % Length;
  #IMPLIED - width override - usemap % URI;
  #IMPLIED - use client's navigation map - ismap (ismap) #IMPLIED - use server-side navigation map - align % IAlign;
  #IMPLIED - vertical or horizontal alignment - border % Length;
  #IMPLIED - border width of the link - hspace % Pixels;
  #IMPLIED - horizontal gutter - vspace % Pixels;
  #IMPLIED - vertical gutter -> <! - USEMAP points to a MAP element that can be in the same or in another document, although the latter is not always supported -> <! - ======== ============ OBJECT ===================================== = -> <! - OBJECT is used to embed objects as part of HTML pages, other elements must be preceded by PARAM elements.  The mixed content model SGML technically prevents such a formal task ... -> <! ELEMENT OBJECT - - (PARAM | % flow; ) * - the general embedded object -> <! ATTLIST OBJECT % attrs;
  - % coreattrs , % i18n , % events - declare (declare) #IMPLIED - declare, but do not initialize the flag - classid % URI;
  #IMPLIED - defines the implementation - codebase % URI;
  #IMPLIED - base URI for classid, data, archive-- data % URI;
  #IMPLIED - reference to the adware objects - type % ContentType;
  #IMPLIED - data content type - codetype % ContentType;
  #IMPLIED - the content type of the code - archive % URI;
  #IMPLIED - space-separated list of archives - standby % Text;
  #IMPLIED - message displayed at boot time - height % Length;
  #IMPLIED - height override - width % Length;
  #IMPLIED - width override - usemap % URI;
  #IMPLIED - uses the client's navigation map - name CDATA #IMPLIED - pass as part of the form - tabindex NUMBER #IMPLIED - position in the transition sequence - align % IAlign;
  #IMPLIED - vertical or horizontal alignment - border % Length;
  #IMPLIED - border width of the link - hspace % Pixels;
  #IMPLIED - horizontal gutter - vspace % Pixels;
  #IMPLIED - vertical gutter - % reserved;
  - reserved for future use -> <! ELEMENT PARAM - O EMPTY - value of the named property -> <! ATTLIST PARAM id ID #IMPLIED - unique identifier within the document - name CDATA #REQUIRED - name of the property - value CDATA #IMPLIED - property value - valuetype (DATA | REF | OBJECT) DATA - how to interpret the value - type % ContentType;
  #IMPLIED - the content type for the value if valuetype = ref -> <! - =================== Java applet ========= ========================= -> <! - One of the attributes of the code or object must be present.  Place PARAM elements before other content.  -> <!  ELEMENT APPLET - - (PARAM | % flow; ) * - Java applet -> <! ATTLIST APPLET % coreattrs;
  - id, class, style, title - codebase % URI;
  #IMPLIED - optional base URI for applet - archive CDATA #IMPLIED - comma-separated list of archives - code CDATA #IMPLIED - applet class file - object CDATA #IMPLIED - serial applet file - alt % Text;
  #IMPLIED - short description - name CDATA #IMPLIED - allow applets to detect each other - width % Length;
  #REQUIRED - initial width - height % Length;
  #REQUIRED - initial height - align % IAlign;
  #IMPLIED - vertical or horizontal alignment - hspace % Pixels;
  #IMPLIED - horizontal gutter - vspace % Pixels;
  #IMPLIED - vertical gutter -> <! - =================== Horizontal separator ================ ================== -> <! ELEMENT HR - O EMPTY - horizontal separator -> <! ATTLIST HR % coreattrs;
  - id, class, style, title - % events;
  Align (left | center | right) #IMPLIED noshade (noshade) #IMPLIED size % Pixels;
  #IMPLIED width % Length;
  #IMPLIED> <! - =================== Paragraphs ======================= ================ -> <! ELEMENT P - O ( % inline; ) * - paragraph -> <! ATTLIST P % attrs;
  - % coreattrs , % i18n , % events - % align;
  - alignment, alignment of the text -> <! - =================== Headers ================= ======================== -> <! - There are six levels of headers: from H1 to H6 (least significant).  -> <! ELEMENT ( % heading; ) - - ( % inline; ) * - header -> <! ATTLIST ( % heading; ) % attrs;
  - % coreattrs , % i18n , % events - % align;
  - alignment, text alignment -> <! - =================== Formatted text ================ ================ -> <! - excludes markup for images and changing font size -> <! ENTITY% pre.exclusion "IMG | OBJECT | APPLET | BIG | SMALL | SUB | SUP | FONT | BASEFONT "> <! ELEMENT PRE - - ( % inline; ) * - ( % pre.exclusion; ) - formatted text -> <! ATTLIST PRE % attrs;
  - % coreattrs , % i18n , % events - width NUMBER #IMPLIED> <! - ===================== Embedded Quotations ====== ============================ -> <! ELEMENT Q - - ( % inline; ) * - short embedded quote - > <! ATTLIST Q % attrs;
  - % coreattrs , % i18n , % events - cite % URI;
  #IMPLIED - the URI of the original document or message -> <! - =================== Block-level quotations ============ ==================== -> <! ELEMENT BLOCKQUOTE - - ( % flow; ) * - long quote -> <! ATTLIST BLOCKQUOTE % attrs;
  - % coreattrs , % i18n , % events - cite % URI;
  #IMPLIED - the URI of the source document or message -> <! - =================== Inserted / Deleted Text =========== ================= -> <! - INS / DEL are handled by inclusion on BODY -> <! ELEMENT ( INS | DEL ) - - ( % flow; ) * - inserted text, deleted text -> <! ATTLIST (INS | DEL) % attrs;
  - % coreattrs , % i18n , % events - cite % URI;
  #IMPLIED - information about the reasons for the changes - datetime % Datetime;
  #IMPLIED - date and time of making changes -> <! - =================== Lists ============== ============================== -> <! - Definition lists - DT is a term, DD is its definition - > <! ELEMENT DL - - (DT | DD) + - list of definitions -> <! ATTLIST DL % attrs;
  - % coreattrs , % i18n , % events - compact (compact) #IMPLIED - shortened distance between elements -> <! ELEMENT DT - O ( % inline; ) * - term -> <! ELEMENT DD - O ( % flow; ) * - definition -> <! ATTLIST (DT | DD) % attrs;
  - % coreattrs , % i18n , % events -> <! - Ordered lists (OL) numbering style 1 arabic digits 1, 2, 3, ... a lowercase letters a, b, c, ... A letters in uppercase A, B, C, ... i Roman numerals, lowercase i, ii, iii, ... I Roman numerals, uppercase I, II, III, ... This style applies to ordinal numbers , By default, the first element of the list is set to 1. Directly in SGML, this can not be expressed due to problems with the register.  -> <! ENTITY% OLStyle " CDATA " - is limited: "(1 | a | A | i | I)" -> <! ELEMENT OL - - (LI) + - ordered list -> <! ATTLIST OL % attrs;
  - % coreattrs , % i18n , % events - type % OLStyle;
  #IMPLIED - numbering style - compact (compact) #IMPLIED - shortened distance between elements - start NUMBER #IMPLIED - initial sequence number -> <! - Unordered Lists (UL) bullet styles -> <! ENTITY% ULStyle "(disc | square | circle)"> <! ELEMENT UL - - (LI) + - unordered list -> <! ATTLIST UL % attrs;
  - % coreattrs , % i18n , % events - type % ULStyle;
  #IMPLIED - bullet style - compact (compact) #IMPLIED - shortened distance between elements -> <!  ELEMENT ( DIR | MENU ) - - (LI) + - ( % block; ) - list of directories, menu list -> <! ATTLIST DIR % attrs;
  - % coreattrs , % i18n , % events - compact (compact) #IMPLIED> <! ATTLIST MENU % attrs;
  - % coreattrs , % i18n , % events - compact (compact) #IMPLIED> <! ENTITY% LIStyle " CDATA " - is limited to: "( % ULStyle; | % OLStyle; )" -> <! ELEMENT LI - O ( % flow; ) * - list item -> <! ATTLIST LI % attrs;
  - % coreattrs , % i18n , % events - type % LIStyle;
  #IMPLIED - list item style - value NUMBER #IMPLIED - reset serial number -> <! - ================ Forms ======== ======================================= -> <! ELEMENT FORM - - ( % Flow; ) * - (FORM) - interactive form -> <! ATTLIST FORM % attrs;
  - % coreattrs , % i18n , % events - action % URI;
 #REQUIRED -- дескриптор серверной формы -- method (GET|POST) GET -- метод HTTP, используемый для отправки формы -- enctype %ContentType; "application/x-www-form-urlencoded" onsubmit %Script; #IMPLIED -- форма отправлена -- onreset %Script; #IMPLIED -- форма сброшена -- target %FrameTarget; #IMPLIED -- генерировать в этом фрейме -- accept-charset %Charsets; #IMPLIED -- список поддерживаемых наборов символов -- > <!-- Each label must not contain more than ONE field --> <!ELEMENT LABEL - - ( %inline; )* -(LABEL) - текст метки поля формы --> <!ATTLIST LABEL %attrs; -- %coreattrs , %i18n , %events -- for IDREF #IMPLIED -- совпадает со значением ID поля -- accesskey %Character; #IMPLIED -- клавиша доступа -- onfocus %Script; #IMPLIED -- фокус перешел к элементу -- onblur %Script; #IMPLIED -- фокус ушел с элемента -- > <!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX | RADIO | SUBMIT | RESET | FILE | HIDDEN | IMAGE | BUTTON)" > <!-- атрибут name обязателен для всех элементов, кроме submit & reset --> <!ELEMENT INPUT - O EMPTY -- управляющий элемент формы --> <!ATTLIST INPUT %attrs; -- %coreattrs , %i18n , %events -- type %InputType; TEXT -- что должно быть введено -- name CDATA #IMPLIED -- передать как часть формы -- value CDATA #IMPLIED -- обязателен для кнопок с зависимой фиксацией и флажков -- checked (checked) #IMPLIED -- для кнопок с зависимой фиксацией и флажков -- disabled (disabled) #IMPLIED -- в данном контексте недоступно -- readonly (readonly) #IMPLIED -- для текста и пароля -- size CDATA #IMPLIED -- свое для каждого типа поля -- maxlength NUMBER #IMPLIED -- максимальное число символов для текстовых полей -- src %URI; #IMPLIED -- для полей с изображениями -- alt CDATA #IMPLIED -- краткое описание -- usemap %URI; #IMPLIED -- use клиентская навигационная карта -- tabindex NUMBER #IMPLIED -- положение в последовательности перехода -- accesskey %Character; #IMPLIED -- клавиша доступа -- onfocus %Script; #IMPLIED -- фокус перешел к элементу -- onblur %Script; #IMPLIED -- фокус ушел с элемента -- onselect %Script; #IMPLIED -- выделен некоторый текст -- onchange %Script; #IMPLIED -- изменено значение элемента -- accept %ContentTypes; #IMPLIED -- список типов MIME файлов для загрузки -- align %IAlign; #IMPLIED -- вертикальное или горизонтальное выравнивание -- %reserved; -- зарезервировано для использования в будущем -- > <!ELEMENT SELECT - - (OPTGROUP|OPTION)+ -- выбор вариантов --> <!ATTLIST SELECT %attrs; -- %coreattrs , %i18n , %events -- name CDATA #IMPLIED -- название поля -- size NUMBER #IMPLIED -- видимые строки -- multiple (multiple) #IMPLIED -- одиночный выбор по умолчанию -- disabled (disabled) #IMPLIED -- в данном контексте недоступно -- tabindex NUMBER #IMPLIED -- положение в последовательности перехода -- onfocus %Script; #IMPLIED -- фокус перешел к элементу -- onblur %Script; #IMPLIED -- фокус ушел с элемента -- onchange %Script; #IMPLIED -- изменено значение элемента -- %reserved; -- зарезервировано для использования в будущем -- > <!ELEMENT OPTGROUP - - (OPTION)+ -- группа параметров --> <!ATTLIST OPTGROUP %attrs; -- %coreattrs , %i18n , %events -- disabled (disabled) #IMPLIED -- в данном контексте недоступно -- label %Text; #REQUIRED -- для использования в иерархических меню -- > <!ELEMENT OPTION - O (#PCDATA) -- выбираемый вариант --> <!ATTLIST OPTION %attrs; -- %coreattrs , %i18n , %events -- selected (selected) #IMPLIED disabled (disabled) #IMPLIED -- в данном контексте недоступно -- label %Text; #IMPLIED -- для использования в иерархических меню -- value CDATA #IMPLIED -- по умолчанию - содержимое элемента -- > <!ELEMENT TEXTAREA - - (#PCDATA) -- текстовое поле из нескольких строк --> <!ATTLIST TEXTAREA %attrs; -- %coreattrs , %i18n , %events -- name CDATA #IMPLIED rows NUMBER #REQUIRED cols NUMBER #REQUIRED disabled (disabled) #IMPLIED -- в данном контексте недоступно -- readonly (readonly) #IMPLIED tabindex NUMBER #IMPLIED -- положение в последовательности перехода -- accesskey %Character; #IMPLIED -- клавиша доступа -- onfocus %Script; #IMPLIED -- фокус перешел к элементу -- onblur %Script; #IMPLIED -- фокус ушел с элемента -- onselect %Script; #IMPLIED -- выделен некоторый текст -- onchange %Script; #IMPLIED -- изменено значение элемента -- %reserved; -- зарезервировано для использования в будущем -- > <!-- #PCDATA используется для решения проблемы смешанного содержимого, здесь допустимы только пробельные символы! --> <!ELEMENT FIELDSET - - (#PCDATA,LEGEND,( %flow; )*) - группа управляющих элементов формы --> <!ATTLIST FIELDSET %attrs; -- %coreattrs , %i18n , %events -- > <!ELEMENT LEGEND - - ( %inline; )* -- описание набора полей --> <!ENTITY % LAlign "(top|bottom|left|right)"> <!ATTLIST LEGEND %attrs; -- %coreattrs , %i18n , %events -- accesskey %Character; #IMPLIED -- клавиша доступа -- align %LAlign; #IMPLIED -- относительно набора полей -- > <!ELEMENT BUTTON - - ( %flow; )* -(A| %formctrl; |FORM|ISINDEX|FIELDSET|IFRAME) -- кнопка --> <!ATTLIST BUTTON %attrs; -- %coreattrs , %i18n , %events -- name CDATA #IMPLIED value CDATA #IMPLIED -- отправлено на сервер при передаче -- type (button|submit|reset) submit -- для использования в качестве кнопки -- disabled (disabled) #IMPLIED -- в данном контексте недоступно -- tabindex NUMBER #IMPLIED -- положение в последовательности перехода -- accesskey %Character; #IMPLIED -- клавиша доступа -- onfocus %Script; #IMPLIED -- фокус перешел к элементу -- onblur %Script; #IMPLIED -- фокус ушел с элемента -- %reserved; -- зарезервировано для использования в будущем -- > <!--======================= Таблицы =======================================--> <!-- IETF HTML table standard, see [RFC1942] --> <!-- Атрибут BORDER устанавливает толщину рамки вокруг таблицы. По умолчанию используются пикселы. Атрибут FRAME определяет, какие части рамки вокруг таблицы должны представляться. Значения не совпадают с CALS во избежание конфликтов имен с атрибутом VALIGN. Значение "border" включено для совместимости с предыдущими версиями <TABLE BORDER>, уступив место frame=border и border=implied Для <TABLE BORDER=1> введены border=1 и frame=implied. В этом случае оно может обрабатываться как frame=border для совместимости с браузерами более старых версий. --> <!ENTITY % TFrame "(void|above|below|hsides|lhs|rhs|vsides|box|border)"> <!-- Атрибут RULES определяет, какие rules между ячейками будут отображаться: Если атрибут RULES отсутстввует, предполагается: "none", если атрибут BORDER отсутствует или BORDER=0, в противном случае "all" --> <!ENTITY % TRules "(none | groups | rows | cols | all)"> <!-- горизонтальное расположение таблицы относительно документа --> <!ENTITY % TAlign "(left|center|right)"> <!-- атрибуты горизонтального выравнивания содержимого ячейки --> <!ENTITY % cellhalign " align (left|center|right|justify|char) #IMPLIED char %Character; #IMPLIED -- символ выравнивания, например, char=':' -- charoff %Length; #IMPLIED -- смещение символа выравнивания --" > <!-- атрибуты вертикального выравниваиня содержимого ячейки --> <!ENTITY % cellvalign " valign (top|middle|bottom|baseline) #IMPLIED" > <!ELEMENT TABLE - - (CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+)> <!ELEMENT CAPTION - - ( %inline; )* -- table caption --> <!ELEMENT THEAD - O (TR)+ -- заголовок таблицы --> <!ELEMENT TFOOT - O (TR)+ -- нижний заголовок таблицы --> <!ELEMENT TBODY OO (TR)+ -- тело таблицы --> <!ELEMENT COLGROUP - O (col)* -- группа столбцов таблицы --> <!ELEMENT COL - O EMPTY -- столбец таблицы --> <!ELEMENT TR - O (TH|TD)+ -- строка таблицы --> <!ELEMENT ( TH | TD ) - O ( %flow; )* -- ячейка заголовка таблицы, ячейка данных таблицы--> <!ATTLIST TABLE -- элемент таблицы -- %attrs; -- %coreattrs , %i18n , %events -- summary %Text; #IMPLIED -- назначение/структура речевого вывода-- width %Length; #IMPLIED -- ширина таблицы -- border %Pixels; #IMPLIED -- управляет толщиной рамки вокруг таблицы -- frame %TFrame; #IMPLIED -- какие части рамки должны геренироваться -- rules %TRules; #IMPLIED -- разделители между строками столбцами -- cellspacing %Length; #IMPLIED -- расстояние между ячейками -- cellpadding %Length; #IMPLIED -- расстояние в ячейках -- align %TAlign; #IMPLIED -- положение таблицы относительно окна -- bgcolor %Color; #IMPLIED -- цвет фона ячеек -- %reserved; -- зарезервировано для использования в будущем -- datapagesize CDATA #IMPLIED -- зарезервировано для использования в будущем -- > <!ENTITY % CAlign "(top|bottom|left|right)"> <!ATTLIST CAPTION %attrs; -- %coreattrs , %i18n , %events -- align %CAlign; #IMPLIED -- относительно таблицы -- > <!-- COLGROUP объяединяет ряд элементов COL. В можете группировать несколько семантически связанных столбцов. --> <!ATTLIST COLGROUP %attrs; -- %coreattrs , %i18n , %events -- span NUMBER 1 -- число столбцов в группе по умолчанию -- width %MultiLength; #IMPLIED -- ширина по умолчанию для вложенных COL -- %cellhalign; -- горизонтальное выравнивание в ячейках -- %cellvalign; -- вертикальное выравнивание в ячейках -- > <!-- Элементы COL определяют свойства выраванивания для ячеек в одном или нескольких столбцах. Атрибут WIDTH определяет ширину столбцов, например, width=64 ширина в пикселах width=0.5* относительная ширина 0.5 Атрибут SPAN приводит к тому, что атрибуты одного элемента COL приеняются к нскольким столбцам. --> <!ATTLIST COL -- группа и свойства столбцов -- %attrs; -- %coreattrs , %i18n , %events -- span NUMBER 1 -- атрибуты COL влияют на N столбцов -- width %MultiLength; #IMPLIED -- указание ширины столбца -- %cellhalign; -- горизонтальное выравнивание в ячейках -- %cellvalign; -- вертикальное выравнивание в ячейках -- > <!-- Используйте THEAD для дублирования заголовков при разрые таблицы на страницах ли для представления статических заголовков, когда разделы TBODY представляются на прокручиваемой панели. Используйте TFOOT для дублирования нижних заголовков при разрые таблицы на страницах ли для представления статических заголовков, когда разделы TBODY представляются на прокручиваемой панели. Используйте несколько разделов TBODY, если между группами строк таблицы необходимы rules. --> <!ATTLIST (THEAD|TBODY|TFOOT) -- table section -- %attrs; -- %coreattrs , %i18n , %events -- %cellhalign; -- горизонтальное выравнивание в ячейках -- %cellvalign; -- вертикальное выравнивание в ячейках -- > <!ATTLIST TR -- строка таблицы -- %attrs; -- %coreattrs , %i18n , %events -- %cellhalign; -- горизонтальное выравнивание в ячейках -- %cellvalign; -- вертикальное выравнивание в ячейках -- bgcolor %Color; #IMPLIED -- цвет фона строки -- > <!-- Атрибут Scope проще атрибута axes для большинства таблиц --> <!ENTITY % Scope "(row|col|rowgroup|colgroup)"> <!-- TH - для заголовков, TD 0 для данных, но для ячеек, действующих как то и другое используйте TD --> <!ATTLIST (TH|TD) -- ячейка заголовка или данных -- %attrs; -- %coreattrs , %i18n , %events -- abbr %Text; #IMPLIED -- аббревиатура ячейки заголовка -- axis CDATA #IMPLIED -- группы имен связаннх столбцов -- headers IDREFS #IMPLIED -- список идентификаторов ячеек заголовков -- scope %Scope; #IMPLIED -- область действия ячеек заголовков -- rowspan NUMBER 1 -- число строк, занимаемых ячейкой -- colspan NUMBER 1 -- число столбцов, занимаемых ячейкой -- %cellhalign; -- горизонтальное выравнивание в ячейках -- %cellvalign; -- вертикальное выравнивание в ячейках -- nowrap (nowrap) #IMPLIED -- подавление переноса слов -- bgcolor %Color; #IMPLIED -- цвет фона ячейки -- width %Pixels; #IMPLIED -- ширина ячейки -- height %Pixels; #IMPLIED -- высота ячейки -- > <!--================== Фреймы документа ===================================--> <!-- Модель содержимого документов HTML зависит от того, следует ли за элементом HEAD элемент FRAMESET или BODY. Широко растпространенный пропуск начального тега BODY не позволяет определить модель содержимого без использования размеченного раздела. --> <!-- Feature Switch for frameset documents --> <!ENTITY % HTML.Frameset "IGNORE"> <![ %HTML.Frameset; [ <! ELEMENT FRAMESET - - ((FRAMESET|FRAME)+ & NOFRAMES?) - подразделение окна --> <!ATTLIST FRAMESET %coreattrs; -- id, class, style, title -- rows %MultiLengths; #IMPLIED -- список длин, по умочланию: 100% (1 строка) -- cols %MultiLengths; #IMPLIED -- список длин, по умолчанию: 100% (1 столбец) -- onload %Script; #IMPLIED -- все фреймы загружены -- onunload %Script; #IMPLIED -- все фреймы удалены -- > ]]> <![ %HTML.Frameset; [ <!-- зарезервированные имена фреймов начинаются с "_", в противном случае - с буквы --> <! ELEMENT FRAME - O EMPTY -- вложенное окно --> <!ATTLIST FRAME %coreattrs; -- id, class, style, title -- longdesc %URI; #IMPLIED -- ссылка на длинное описание (дополняет title) -- name CDATA #IMPLIED -- имя целевого фрейма -- src %URI; #IMPLIED -- источник содержимого фрейма -- frameborder (1|0) 1 -- нужны границы фрейма? -- marginwidth %Pixels; #IMPLIED -- ширина полей в пикселах -- marginheight %Pixels; #IMPLIED -- высотав полей в пикселах -- noresize (noresize) #IMPLIED -- позволить пользователям изменять размеры фрейма? -- scrolling (yes|no|auto) auto -- наличие полосы прокрутки -- > ]]> <! ELEMENT IFRAME - - ( %flow; )* -- встроенное вложенное окно --> <!ATTLIST IFRAME %coreattrs; -- id, class, style, title -- longdesc %URI; #IMPLIED -- ссылка на длинное описание (дополняет title) -- name CDATA #IMPLIED -- имя целевого фрейма -- src %URI; #IMPLIED -- источник содержимого фрейма -- frameborder (1|0) 1 -- нужны границы фрейма? -- marginwidth %Pixels; #IMPLIED -- ширина полей в пикселах -- marginheight %Pixels; #IMPLIED -- высота полей в пикселах -- scrolling (yes|no|auto) auto -- нужна ли полоса прокрутки -- align %IAlign; #IMPLIED -- вертикальное или горизонтальное выравнивание -- height %Length; #IMPLIED -- высота фрейма -- width %Length; #IMPLIED -- ширина фрейма -- > <![ %HTML.Frameset; [ <!ENTITY % noframes.content "(BODY) -(NOFRAMES)"> ]]> <!ENTITY % noframes.content "( %flow; )*"> <! ELEMENT NOFRAMES - - %noframes.content; -- контейнер альтернативного содержимого для представления без фреймов --> <!ATTLIST NOFRAMES %attrs; -- %coreattrs , %i18n , %events -- > <!--================ Заголовок документа =======================================--> <!-- %head.misc; определяется ранее как "SCRIPT|STYLE|META|LINK|OBJECT" --> <!ENTITY % head.content "TITLE & ISINDEX? & BASE?"> <!ELEMENT HEAD OO ( %head.content; ) +( %head.misc; ) - заголовок документа --> <!ATTLIST HEAD %i18n; -- lang, dir -- profile %URI; #IMPLIED -- именованный словарь метаинформации -- > <!-- Элемент TITLE не считается частью потока текста. Он должен отображаться, например, в виде заголовка страницы или окна. У кажого документа должен быть ровно один заголовок. --> <!ELEMENT TITLE - - (#PCDATA) -( %head.misc; ) -- заголовок документа --> <!ATTLIST TITLE %i18n > <! ELEMENT ISINDEX - O EMPTY -- запрос из одной строки --> <!ATTLIST ISINDEX %coreattrs; -- id, class, style, title -- %i18n; -- lang, dir -- prompt %Text; #IMPLIED -- сообщение запроса --> <!ELEMENT BASE - O EMPTY -- базовый URI документа --> <!ATTLIST BASE href %URI; #IMPLIED -- URI, служащий базовым -- target %FrameTarget; #IMPLIED -- генерировать в этом фрейме -- > <!ELEMENT META - O EMPTY -- общая метаинформация --> <!ATTLIST META %i18n; -- lang, dir, для использования с содержимым -- http-equiv NAME #IMPLIED -- HTTP имя заголовка ответа -- name NAME #IMPLIED -- имя метаинформации -- content CDATA #REQUIRED -- связанная информация -- scheme CDATA #IMPLIED -- выбор формы содержимого -- > <!ELEMENT STYLE - - %StyleSheet -- информация о стиле --> <!ATTLIST STYLE %i18n; -- lang, dir, для использования в заголовке -- type %ContentType; #REQUIRED -- тип содержимого языка стиля -- media %MediaDesc; #IMPLIED -- для использвоания с этими устройствами -- title %Text; #IMPLIED -- рекомендуемый заголовок -- > <!ELEMENT SCRIPT - - %Script; -- выражения скрипта --> <!ATTLIST SCRIPT charset %Charset; #IMPLIED -- кодировка связанного ресурса -- type %ContentType; #REQUIRED -- тип содержимого языка скрипта -- language CDATA #IMPLIED -- предопределенное имя языка скрипта -- src %URI; #IMPLIED -- URI внешнего скрипта -- defer (defer) #IMPLIED -- агент пользователя может отложить выполнение скрипта -- event CDATA #IMPLIED -- зарезервировано для использования в будущем -- for %URI; #IMPLIED -- зарезервировано для использования в будущем -- > <!ELEMENT NOSCRIPT - - ( %flow; )* -- контейнер альтернативного содержимого для представления без скриптов --> <!ATTLIST NOSCRIPT %attrs; -- %coreattrs , %i18n , %events -- > <!--================ Структура документа ==================================--> <!ENTITY % version "version CDATA #FIXED ' %HTML.Version; '"> <![ %HTML.Frameset; [ <!ENTITY % html.content "HEAD, FRAMESET"> ]]> <!ENTITY % html.content "HEAD, BODY"> <!ELEMENT HTML OO ( %html.content; ) -- корневой элемент документа --> <!ATTLIST HTML %i18n; -- lang, dir -- %version;  >