La version française de cette traduction est :
http://www.la-grange.net/w3c/html4.01/
Traducteur : J.J.Solari dans le cadre de l'effort de la liste de discussion w3c-translators.fr@w3.org
La version française peut contenir des erreurs. La version anglaise de cette note est l'unique version
normative. Version originale : http://www.w3.org/TR/1999/REC-html401-19991224
<!-- Ceci est le DTD HTML 4.01 Transitional, qui inclut les attributs et les éléments de présentation que le W3C prévoit de supprimer graduellement au fur et à mesure de la gestion accrue des feuilles de style. Les auteurs devraient employer le DTD strict autant que possible, mais ils peuvent employer le DTD transitoire quand la gestion des attributs et éléments de présentation est exigée. HTML 4 comprend des mécanismes pour les feuilles de style, les scripts, l'incorporation des objets, l'amélioration de la gestion des textes de droite à gauche et mixtes, et l'amélioration des formulaires pour accroître l'accessibilit&eacut;e des personnes avec des déficiences physiques. Projet : $Date: 1999/12/24 22:40:35 $ Auteurs : Dave Raggett <dsr@w3.org> Arnaud Le Hors <lehors@w3.org> Ian Jacobs <ij@w3.org> On trouvera plus d'informations sur HTML 4.01 à : http://www.w3.org/TR/1999/REC-html401-19991224 La spécification HTML 4.01 inclut des contraintes syntaxiques supplémentaires qui ne peuvent pas s'exprimer dans les DTD. --> <!ENTITY % HTML.Version "-//W3C//DTD HTML 4.01 Transitional//EN" -- Utilisation typique : <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> ... </head> <body> ... </body> </html> L'URI utilisé comme identifiant de système avec l'identifiant public permet à l'agent utilisateur de télécharger le DTD et les jeux d'entités au besoin. Le FPI du DTD HTML 4.01 Strict : "-//W3C//DTD HTML 4.01//EN" Cette version du DTD strict : http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd Les auteurs devraient employer le DTD Strict à moins qu'ils n'aient besoin d'un contrôle de la présentation pour les agents utilisateurs qui ne reconnaissent pas (de manière adéquate) les feuilles de style. Si vous écrivez un document qui comprend des cadres, employez le FPI suivant : "-//W3C//DTD HTML 4.01 Frameset//EN" Cette version du DTD avec jeu d'encadrement : http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd Utilisez les URI (relatifs) suivant pour se référer aux DTD et définitions d'entité de cette spécification : "strict.dtd" "loose.dtd" "frameset.dtd" "HTMLlat1.ent" "HTMLsymbol.ent" "HTMLspecial.ent" --> <!--================== Noms importés ====================================--> <!-- Interrupteur de fonctionnalité pour les documents avec jeu d'encadrement --> <!ENTITY % HTML.Frameset "IGNORE"> <!ENTITY % ContentType "CDATA" -- type de média, selon [RFC2045] --> <!ENTITY % ContentTypes "CDATA" -- liste de types de média, séparés par des virgules, selon [RFC2045] --> <!ENTITY % Charset "CDATA" -- un encodage de caractères, selon [RFC2045] --> <!ENTITY % Charsets "CDATA" -- une liste d'encodages de caractères, séparés par des virgules, selon [RFC2045] --> <!ENTITY % LanguageCode "NAME" -- un code de langue, selon [RFC1766] --> <!ENTITY % Character "CDATA" -- un seul caractère issu du jeu [ISO10646] --> <!ENTITY % LinkTypes "CDATA" -- liste de types de lien, séparés par des espaces --> <!ENTITY % MediaDesc "CDATA" -- un descripteur de média seul, ou une liste de descripteurs, séparés par des virgules --> <!ENTITY % URI "CDATA" -- un identifiant de ressource uniforme (URI), voir [URI] --> <!ENTITY % Datetime "CDATA" -- informations de date et d'heure. Format de date ISO --> <!ENTITY % Script "CDATA" -- expression de script --> <!ENTITY % StyleSheet "CDATA" -- données de feuille de style --> <!ENTITY % FrameTarget "CDATA" -- restituer dans ce cadre --> <!ENTITY % Text "CDATA"> <!-- Entités paramètres --> <!ENTITY % head.misc "SCRIPT|STYLE|META|LINK|OBJECT" -- éléments d'en-tête répétables --> <!ENTITY % heading "H1|H2|H3|H4|H5|H6"> <!ENTITY % list "UL | OL | DIR | MENU"> <!ENTITY % preformatted "PRE"> <!ENTITY % Color "CDATA" -- une couleur utilisant sRGB : #RRGGBB en valeur hexadécimales --> <!-- Il y a aussi 16 noms de couleur largement répandus, avec leur valeur sRGB : Black = #000000 Green = #008000 Silver = #C0C0C0 Lime = #00FF00 Gray = #808080 Olive = #808000 White = #FFFFFF Yellow = #FFFF00 Maroon = #800000 Navy = #000080 Red = #FF0000 Blue = #0000FF Purple = #800080 Teal = #008080 Fuchsia= #FF00FF Aqua = #00FFFF --> <!ENTITY % bodycolors " bgcolor %Color; #IMPLIED -- couleur d'arrière-plan du document -- text %Color; #IMPLIED -- couleur du texte du document -- link %Color; #IMPLIED -- couleur des liens -- vlink %Color; #IMPLIED -- couleur des liens visités -- alink %Color; #IMPLIED -- couleur des liens sélectionnés -- "> <!--================ Entités de caractères mnémoniques =========================--> <!ENTITY % HTMLlat1 PUBLIC "-//W3C//ENTITIES Latin1//EN//HTML" "HTMLlat1.ent"> %HTMLlat1; <!ENTITY % HTMLsymbol PUBLIC "-//W3C//ENTITIES Symbols//EN//HTML" "HTMLsymbol.ent"> %HTMLsymbol; <!ENTITY % HTMLspecial PUBLIC "-//W3C//ENTITIES Special//EN//HTML" "HTMLspecial.ent"> %HTMLspecial; <!--=================== Attributs génériques ===============================--> <!ENTITY % coreattrs "id ID #IMPLIED -- id unique au document -- class CDATA #IMPLIED -- liste de classes, séparées par des espaces -- style %StyleSheet; #IMPLIED -- indication de style associé -- title %Text; #IMPLIED -- titre consultatif --" > <!ENTITY % i18n "lang %LanguageCode; #IMPLIED -- code de langue -- dir (ltr|rtl) #IMPLIED -- direction de texte lâche/neutre --" > <!ENTITY % events "onclick %Script; #IMPLIED -- un bouton du pointeur a été cliqué -- ondblclick %Script; #IMPLIED -- un bouton du pointeur a été double-cliqué -- onmousedown %Script; #IMPLIED -- un bouton du pointeur a été appuyé -- onmouseup %Script; #IMPLIED -- un bouton du pointeur a été relâché -- onmouseover %Script; #IMPLIED -- le pointeur a été déplacé sur -- onmousemove %Script; #IMPLIED -- le pointeur a été déplacé dans -- onmouseout %Script; #IMPLIED -- le pointeur a été déplacé ailleurs -- onkeypress %Script; #IMPLIED -- une touche a été pressée puis relâchée -- onkeydown %Script; #IMPLIED -- une touche a été appuyée -- onkeyup %Script; #IMPLIED -- une touche a été relâchée --" > <!-- Interrupteur de fonctionnalité réservé --> <!ENTITY % HTML.Reserved "IGNORE"> <!-- Les attributs suivants sont réservés pour une possible utilisation future --> <![ %HTML.Reserved; [ <!ENTITY % reserved "datasrc %URI; #IMPLIED -- une source de données seule ou tabulaire -- datafld CDATA #IMPLIED -- le nom de la propriété ou de la colonne -- dataformatas (plaintext|html) plaintext -- format texte ou html --" > ]]> <!ENTITY % reserved ""> <!ENTITY % attrs "%coreattrs; %i18n; %events;"> <!ENTITY % align "align (left|center|right|justify) #IMPLIED" -- par défaut, c'est left pour une direction ltr et right pour rtl -- > <!--=================== Balisage du texte ======================================--> <!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; couvre les éléments en-ligne ou de "niveau texte" --> <!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;"> <!ELEMENT (%fontstyle;|%phrase;) - - (%inline;)*> <!ATTLIST (%fontstyle;|%phrase;) %attrs; -- %coreattrs, %i18n, %events -- > <!ELEMENT (SUB|SUP) - - (%inline;)* -- écriture en lettres inférieures ou supérieures --> <!ATTLIST (SUB|SUP) %attrs; -- %coreattrs, %i18n, %events -- > <!ELEMENT SPAN - - (%inline;)* -- conteneur de langue/style générique --> <!ATTLIST SPAN %attrs; -- %coreattrs, %i18n, %events -- %reserved; -- réservé pour une possible utilisation future -- > <!ELEMENT BDO - - (%inline;)* -- surclassement algorithme I18N BiDi --> <!ATTLIST BDO %coreattrs; -- id, class, style, title -- lang %LanguageCode; #IMPLIED -- code de langue -- dir (ltr|rtl) #REQUIRED -- directionnalité -- > <!ELEMENT BASEFONT - O EMPTY -- taille de police de base --> <!ATTLIST BASEFONT id ID #IMPLIED -- id unique au document -- size CDATA #REQUIRED -- taille de police de base pour élément FONT -- color %Color; #IMPLIED -- couleur du texte -- face CDATA #IMPLIED -- liste de noms de police, séparés par des virgules -- > <!ELEMENT FONT - - (%inline;)* -- changement local de la police --> <!ATTLIST FONT %coreattrs; -- id, class, style, title -- %i18n; -- lang, dir -- size CDATA #IMPLIED -- [+|-]nn e.g. size="+1", size="4" -- color %Color; #IMPLIED -- couleur du texte -- face CDATA #IMPLIED -- liste de noms de police, séparés par des virgules -- > <!ELEMENT BR - O EMPTY -- saut de ligne forcé --> <!ATTLIST BR %coreattrs; -- id, class, style, title -- clear (left|all|right|none) none -- contr&orcirc;le de l'écoulement du texte -- > <!--================== Modèles de contenu HTML ===============================--> <!-- HTML suit deux modèles de contenu principaux : %inline; éléments au niveau du caractère et les chaînes textuelles %block; élément de type bloc e.g., paragraphse et listes --> <!ENTITY % block "P | %heading; | %list; | %preformatted; | DL | DIV | CENTER | NOSCRIPT | NOFRAMES | BLOCKQUOTE | FORM | ISINDEX | HR | TABLE | FIELDSET | ADDRESS"> <!ENTITY % flow "%block; | %inline;"> <!--=================== Corps du document ====================================--> <!ELEMENT BODY O O (%flow;)* +(INS|DEL) -- corps du document --> <!ATTLIST BODY %attrs; -- %coreattrs, %i18n, %events -- onload %Script; #IMPLIED -- le document a été chargé -- onunload %Script; #IMPLIED -- le document a été retiré -- background %URI; #IMPLIED -- texture en mosaïque pour l'arrière-plan du document -- %bodycolors; -- bgcolor, text, link, vlink, alink -- > <!ELEMENT ADDRESS - - ((%inline;)|P)* -- informations sur l'auteur --> <!ATTLIST ADDRESS %attrs; -- %coreattrs, %i18n, %events -- > <!ELEMENT DIV - - (%flow;)* -- conteneur de langue/style générique --> <!ATTLIST DIV %attrs; -- %coreattrs, %i18n, %events -- %align; -- alignement, alignement du texte -- %reserved; -- réservé pour une possible utilisation future -- > <!ELEMENT CENTER - - (%flow;)* -- raccourci pour DIV align=center --> <!ATTLIST CENTER %attrs; -- %coreattrs, %i18n, %events -- > <!--================== Élément ancre ================================--> <!ENTITY % Shape "(rect|circle|poly|default)"> <!ENTITY % Coords "CDATA" -- liste de longueurs, séparées par des virgules --> <!ELEMENT A - - (%inline;)* -(A) -- ancre --> <!ATTLIST A %attrs; -- %coreattrs, %i18n, %events -- charset %Charset; #IMPLIED -- encodage de caractères de la ressource reliée -- type %ContentType; #IMPLIED -- type de contenu consultatif -- name CDATA #IMPLIED -- extrêmité du lien nommée -- href %URI; #IMPLIED -- URI de la ressource reliée -- hreflang %LanguageCode; #IMPLIED -- code de langue -- target %FrameTarget; #IMPLIED -- restituer dans ce cadre -- rel %LinkTypes; #IMPLIED -- types de lien progressifs -- rev %LinkTypes; #IMPLIED -- types de lien régressifs -- accesskey %Character; #IMPLIED -- touche de caractère pour l'accessibilité -- shape %Shape; rect -- à utiliser avec les images cliquables côté client -- coords %Coords; #IMPLIED -- à utiliser avec les images cliquables côté client -- tabindex NUMBER #IMPLIED -- position dans l'ordre de tabulation -- onfocus %Script; #IMPLIED -- l'élément a l'attention -- onblur %Script; #IMPLIED -- l'élément perd l'attention -- > <!--================== Images cliquables côté client ============================--> <!-- Celles-ci peuvent se placer dans le même document ou regroupées dans un document spéparé, bien que ce ne soit pas encore très répandu --> <!ELEMENT MAP - - ((%block;) | AREA)+ -- image cliquable côté client --> <!ATTLIST MAP %attrs; -- %coreattrs, %i18n, %events -- name CDATA #REQUIRED -- pour appel par l'attribut usemap -- > <!ELEMENT AREA - O EMPTY -- zone d'image cliquable côté client --> <!ATTLIST AREA %attrs; -- %coreattrs, %i18n, %events -- shape %Shape; rect -- contrôle l'interprétation des coordonnées -- coords %Coords; #IMPLIED -- liste de longueurs, séparées par des virgules -- href %URI; #IMPLIED -- URI de la ressource reliée -- target %FrameTarget; #IMPLIED -- restituer dans ce cadre -- nohref (nohref) #IMPLIED -- cette région n'a aucune action -- alt %Text; #REQUIRED -- brève description -- tabindex NUMBER #IMPLIED -- position dans l'ordre de tabulation -- accesskey %Character; #IMPLIED -- touche de caractère pour l'accessibilité -- onfocus %Script; #IMPLIED -- l'élément a l'attention -- onblur %Script; #IMPLIED -- l'élément perd l'attention -- > <!--================== Élément LINK ==================================--> <!-- Les valeurs de relation peuvent en principe être utilisées : a) pour les barres d'outils/menus spécifiques au document, quand ceux-ci sont utilisés avec l'élément LINK dans l'en-tête du document, par exemple, start, contents, previous, next, index, end, help b) pour relier une feuille de style séparée (rel=stylesheet) c) pour faire un lien vers un script (rel=script) d) par les feuilles de style pour contrôler la manière dont les collections de nœuds HTML sont restituées dans les document imprimés e) pour faire un lien vers une version imprimable du document par exemple, une version postscript ou pdf (rel=alternate media=print) --> <!ELEMENT LINK - O EMPTY -- un lien indépendant du média --> <!ATTLIST LINK %attrs; -- %coreattrs, %i18n, %events -- charset %Charset; #IMPLIED -- encodage de caractères de la ressource reliée -- href %URI; #IMPLIED -- URI de la ressource reliée -- hreflang %LanguageCode; #IMPLIED -- code de langue -- type %ContentType; #IMPLIED -- type de contenu consultatif -- rel %LinkTypes; #IMPLIED -- types de lien progressifs -- rev %LinkTypes; #IMPLIED -- types de lien régressifs -- media %MediaDesc; #IMPLIED -- pour restitution sur ces médias -- target %FrameTarget; #IMPLIED -- restituer dans ce cadre -- > <!--=================== Images ===========================================--> <!-- Le type de valeur Length est défini dans le DTD strict pour cellpadding/cellspacing --> <!ENTITY % Length "CDATA" -- longueur nn en pixels ou nn% en pourcentage --> <!ENTITY % MultiLength "CDATA" -- valeur en pixel, en pourcentage ou relative --> <![ %HTML.Frameset; [ <!ENTITY % MultiLengths "CDATA" -- liste de valeur MultiLength, séparées par des virgules --> ]]> <!ENTITY % Pixels "CDATA" -- entier représentant une longueur en pixels --> <!ENTITY % IAlign "(top|middle|bottom|left|right)" -- center? --> <!-- Pour éviter les problèmes avec les agents utilisateurs en mode texte seul ainsi que pour rendre le contenu de l'image compréhensible et navigable aux utilisanteurs d'un agent utilisateur non-visuel, vous devez fournir une description avec l'attribut ALT et éviter les images cliquables côté serveur --> <!ELEMENT IMG - O EMPTY -- Image incorporée --> <!ATTLIST IMG %attrs; -- %coreattrs, %i18n, %events -- src %URI; #REQUIRED -- URI de l'image à incorporer -- alt %Text; #REQUIRED -- brève description -- longdesc %URI; #IMPLIED -- lien vers une description longue (en complément de l'attribut alt) -- name CDATA #IMPLIED -- nom de l'image pour les scripts -- height %Length; #IMPLIED -- surclasse la hauteur -- width %Length; #IMPLIED -- surclasse la largeur -- usemap %URI; #IMPLIED -- utiliser une image cliquable côté client -- ismap (ismap) #IMPLIED -- utiliser une image cliquable côté serveur -- align %IAlign; #IMPLIED -- alignement vertical ou horizontal -- border %Pixels; #IMPLIED -- épaisseur de la bordure du lien -- hspace %Pixels; #IMPLIED -- gouttière horizontale -- vspace %Pixels; #IMPLIED -- gouttière verticale -- > <!-- L'attribut USEMAP pointe vers un élément MAP qui peut se trouver dans le document ou dans un document externe, bien que le dernier ne soit pas largement reconnu --> <!--==================== Élément OBJECT ======================================--> <!-- On utiliser l'élément OBJECT pour incorporer des objets en tant que parties des pages HTML. Les éléments PARAM devraient précéder un autre contenu. La technicité du modèle de contenu mixte de SGML empêche de spécifier ceci formellement... --> <!ELEMENT OBJECT - - (PARAM | %flow;)* -- objet incorporé générique --> <!ATTLIST OBJECT %attrs; -- %coreattrs, %i18n, %events -- declare (declare) #IMPLIED -- déclare mais n'instancie pas de drapeau -- classid %URI; #IMPLIED -- identifie une implémentation -- codebase %URI; #IMPLIED -- URI de base pour classid, data, archive-- data %URI; #IMPLIED -- référence aux données de l'objet -- type %ContentType; #IMPLIED -- type de contenu pour l'attribut data -- codetype %ContentType; #IMPLIED -- type de contenu pour l'attribut code -- archive CDATA #IMPLIED -- liste d'URI spéparés par des espaces -- standby %Text; #IMPLIED -- message à montrer pendant le chargement -- height %Length; #IMPLIED -- surclasse la hauteur -- width %Length; #IMPLIED -- surclasse la largeur -- usemap %URI; #IMPLIED -- utiliser une image cliquable côté client -- name CDATA #IMPLIED -- soumettre comme partie d'un formulaire -- tabindex NUMBER #IMPLIED -- position dans l'ordre de tabulation -- align %IAlign; #IMPLIED -- alignement vertical ou horizontal -- border %Pixels; #IMPLIED -- épaisseur de la bordure du lien -- hspace %Pixels; #IMPLIED -- gouttière horizontale -- vspace %Pixels; #IMPLIED -- gouttière verticale -- %reserved; -- réservé pour une possible utilisation future -- > <!ELEMENT PARAM - O EMPTY -- valeur de propriété nommée --> <!ATTLIST PARAM id ID #IMPLIED -- id unique au document -- name CDATA #REQUIRED -- nom de propriété -- value CDATA #IMPLIED -- valeur de propriété -- valuetype (DATA|REF|OBJECT) DATA -- comment interpréter la valeur -- type %ContentType; #IMPLIED -- type de contenu pour l'attribut value when valuetype=ref -- > <!--=================== Java APPLET ==================================--> <!-- One of code or object attributes must be present. Place PARAM elements before other content. --> <!ELEMENT APPLET - - (PARAM | %flow;)* -- applet Java --> <!ATTLIST APPLET %coreattrs; -- id, class, style, title -- codebase %URI; #IMPLIED -- URI de base optionnel pour l'applet -- archive CDATA #IMPLIED -- liste d'archives spéparées par des virgules -- code CDATA #IMPLIED -- fichier de class de l'applet -- object CDATA #IMPLIED -- fichier d'applet sérialisé -- alt %Text; #IMPLIED -- brève description -- name CDATA #IMPLIED -- permet aux applets de se trouver les unes les autres -- width %Length; #REQUIRED -- largeur initiale -- height %Length; #REQUIRED -- hauteur initiale -- align %IAlign; #IMPLIED -- alignement vertical ou horizontal -- hspace %Pixels; #IMPLIED -- gouttière horizontale -- vspace %Pixels; #IMPLIED -- gouttière verticale -- > <!--=================== Règle horizontale ==================================--> <!ELEMENT HR - O EMPTY -- règle horizontale --> <!ATTLIST HR %attrs; -- %coreattrs, %i18n, %events -- align (left|center|right) #IMPLIED noshade (noshade) #IMPLIED size %Pixels; #IMPLIED width %Length; #IMPLIED > <!--=================== Paragraphes =======================================--> <!ELEMENT P - O (%inline;)* -- paragraphe --> <!ATTLIST P %attrs; -- %coreattrs, %i18n, %events -- %align; -- alignement, alignement du texte -- > <!--=================== Titrages =========================================--> <!-- Il y a six niveaux de titrage à partir de H1 (le plus important) jusqu'à H6 (le moins important). --> <!ELEMENT (%heading;) - - (%inline;)* -- titrage --> <!ATTLIST (%heading;) %attrs; -- %coreattrs, %i18n, %events -- %align; -- alignement, alignement du texte -- > <!--=================== Texte préformaté ================================--> <!-- exclut le balisage des images et les changements dans la taille de police --> <!ENTITY % pre.exclusion "IMG|OBJECT|APPLET|BIG|SMALL|SUB|SUP|FONT|BASEFONT"> <!ELEMENT PRE - - (%inline;)* -(%pre.exclusion;) -- texte préformaté --> <!ATTLIST PRE %attrs; -- %coreattrs, %i18n, %events -- width NUMBER #IMPLIED > <!--===================== Citations en-ligne ==================================--> <!ELEMENT Q - - (%inline;)* -- courte citation en-ligne --> <!ATTLIST Q %attrs; -- %coreattrs, %i18n, %events -- cite %URI; #IMPLIED -- URI du document ou message sources -- > <!--=================== Citations en bloc ================================--> <!ELEMENT BLOCKQUOTE - - (%flow;)* -- citation longue --> <!ATTLIST BLOCKQUOTE %attrs; -- %coreattrs, %i18n, %events -- cite %URI; #IMPLIED -- URI du document ou message sources -- > <!--=================== Texte inséré/supprimé ============================--> <!-- Les éléments INS/DEL sont gérés par inclusion sur BODY --> <!ELEMENT (INS|DEL) - - (%flow;)* -- texte inséré, supprimé --> <!ATTLIST (INS|DEL) %attrs; -- %coreattrs, %i18n, %events -- cite %URI; #IMPLIED -- info sur le motif du changement -- datetime %Datetime; #IMPLIED -- date et heure du changement -- > <!--=================== Listes ============================================--> <!-- Listes de définitions - DT pour le terme, DD pour sa définition --> <!ELEMENT DL - - (DT|DD)+ -- liste de définitions --> <!ATTLIST DL %attrs; -- %coreattrs, %i18n, %events -- compact (compact) #IMPLIED -- espacement entre les items réduit -- > <!ELEMENT DT - O (%inline;)* -- terme de définition --> <!ELEMENT DD - O (%flow;)* -- description de la définition --> <!ATTLIST (DT|DD) %attrs; -- %coreattrs, %i18n, %events -- > <!-- Style de numérotage des listes ordonnées (OL) 1 en chiffres arabes 1, 2, 3, ... a alphabetique minuscule a, b, c, ... A alphabetique majuscule A, B, C, ... i en chiffres romains minuscules i, ii, iii, ... I en chiffres romains majuscules I, II, III, ... Le style s'applique à la succession de numéros qui, par défaut, est réinitialisée à 1 pour le premier item d'une liste ordonnée. On ne peut pas l'exprimer directement dans SGML en raison de l'emballage de la casse. --> <!ENTITY % OLStyle "CDATA" -- contraint à : "(1|a|A|i|I)" --> <!ELEMENT OL - - (LI)+ -- liste ordonnée --> <!ATTLIST OL %attrs; -- %coreattrs, %i18n, %events -- type %OLStyle; #IMPLIED -- style de numérotage -- compact (compact) #IMPLIED -- espacement entre item réduit -- start NUMBER #IMPLIED -- début de la séquence de numéros -- > <!-- Styles des pastilles des listes non-ordonnées (UL) --> <!ENTITY % ULStyle "(disc|square|circle)"> <!ELEMENT UL - - (LI)+ -- liste non-ordonnée --> <!ATTLIST UL %attrs; -- %coreattrs, %i18n, %events -- type %ULStyle; #IMPLIED -- style de pastille -- compact (compact) #IMPLIED -- espacement entre item réduit -- > <!ELEMENT (DIR|MENU) - - (LI)+ -(%block;) -- liste de type répertoire, liste de type menu --> <!ATTLIST DIR %attrs; -- %coreattrs, %i18n, %events -- compact (compact) #IMPLIED -- espacement entre item réduit -- > <!ATTLIST MENU %attrs; -- %coreattrs, %i18n, %events -- compact (compact) #IMPLIED -- espacement entre item réduit -- > <!ENTITY % LIStyle "CDATA" -- contraint à : "(%ULStyle;|%OLStyle;)" --> <!ELEMENT LI - O (%flow;)* -- item de liste --> <!ATTLIST LI %attrs; -- %coreattrs, %i18n, %events -- type %LIStyle; #IMPLIED -- style d'item de liste -- value NUMBER #IMPLIED -- numéro de séquence réinitialisé -- > <!--================ Formulaires ===============================================--> <!ELEMENT FORM - - (%flow;)* -(FORM) -- formulaire interactif --> <!ATTLIST FORM %attrs; -- %coreattrs, %i18n, %events -- action %URI; #REQUIRED -- gestionnaire de formulaire côté serveur -- method (GET|POST) GET -- méthode HTTP utilisée pour soumettre le formulaire -- enctype %ContentType; "application/x-www-form-urlencoded" accept %ContentTypes; #IMPLIED -- liste de types MIME pour le chargement d'un fichier sur un serveur -- name CDATA #IMPLIED -- nom du formulaire pour les scripts -- onsubmit %Script; #IMPLIED -- le formulaire a été soumis -- onreset %Script; #IMPLIED -- le formulaire a été réinitialisé -- target %FrameTarget; #IMPLIED -- restituer dans ce cadre -- accept-charset %Charsets; #IMPLIED -- liste des jeux de caractères reconnus -- > <!-- Chaque label ne doit pas contenir plus d'UN champs --> <!ELEMENT LABEL - - (%inline;)* -(LABEL) -- texte du label d'un champs de formulaire --> <!ATTLIST LABEL %attrs; -- %coreattrs, %i18n, %events -- for IDREF #IMPLIED -- correspond à la valeur ID d'un champs -- accesskey %Character; #IMPLIED -- touche de caractère pour l'accessibilité -- onfocus %Script; #IMPLIED -- l'élément a l'attention -- onblur %Script; #IMPLIED -- l'élément perd l'attention -- > <!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX | RADIO | SUBMIT | RESET | FILE | HIDDEN | IMAGE | BUTTON)" > <!-- Le nom de l'attribut est obligatoire pour tous les types, sauf submit et reset --> <!ELEMENT INPUT - O EMPTY -- form control --> <!ATTLIST INPUT %attrs; -- %coreattrs, %i18n, %events -- type %InputType; TEXT -- quel est le gadget nécessaire -- name CDATA #IMPLIED -- soumettre comme partie d'un formulaire -- value CDATA #IMPLIED -- spécifier pour les boutons radio et les cases à cocher -- checked (checked) #IMPLIED -- pour les boutons radio et les cases à cocher -- disabled (disabled) #IMPLIED -- indisponible dans ce contexte -- readonly (readonly) #IMPLIED -- pour les types text et passwd -- size CDATA #IMPLIED -- propre à chaque type de champs -- maxlength NUMBER #IMPLIED -- nombre de caractères maxi pour champs textuels -- src %URI; #IMPLIED -- pour les champs avec des images -- alt CDATA #IMPLIED -- brève description -- usemap %URI; #IMPLIED -- utiliser une image cliquable côté client -- ismap (ismap) #IMPLIED -- utiliser une image cliquable côté serveur -- tabindex NUMBER #IMPLIED -- position dans l'ordre de tabulation -- accesskey %Character; #IMPLIED -- touche de caractère pour l'accessibilité -- onfocus %Script; #IMPLIED -- l'élément a l'attention -- onblur %Script; #IMPLIED -- l'élément perd l'attention -- onselect %Script; #IMPLIED -- un certain texte a été sélectionné -- onchange %Script; #IMPLIED -- la valeur de l'élément a été changée -- accept %ContentTypes; #IMPLIED -- liste de types MIME pour le chargement d'un fichier sur un serveur -- align %IAlign; #IMPLIED -- alignement vertical ou horizontal -- %reserved; -- réservé pour une possible utilisation future -- > <!ELEMENT SELECT - - (OPTGROUP|OPTION)+ -- sélecteur d'option --> <!ATTLIST SELECT %attrs; -- %coreattrs, %i18n, %events -- name CDATA #IMPLIED -- nom de champs -- size NUMBER #IMPLIED -- rangées visibles -- multiple (multiple) #IMPLIED -- sélection simple par défaut -- disabled (disabled) #IMPLIED -- indisponible dans ce contexte -- tabindex NUMBER #IMPLIED -- position dans l'ordre de tabulation -- onfocus %Script; #IMPLIED -- l'élément a l'attention -- onblur %Script; #IMPLIED -- l'élément perd l'attention -- onchange %Script; #IMPLIED -- la valeur de l'élément a été changée -- %reserved; -- réservé pour une possible utilisation future -- > <!ELEMENT OPTGROUP - - (OPTION)+ -- groupe d'options --> <!ATTLIST OPTGROUP %attrs; -- %coreattrs, %i18n, %events -- disabled (disabled) #IMPLIED -- indisponible dans ce contexte -- label %Text; #REQUIRED -- à utiliser dans les menus hiérarchiques -- > <!ELEMENT OPTION - O (#PCDATA) -- option sélectionnable --> <!ATTLIST OPTION %attrs; -- %coreattrs, %i18n, %events -- selected (selected) #IMPLIED disabled (disabled) #IMPLIED -- indisponible dans ce contexte -- label %Text; #IMPLIED -- à utiliser dans les menus hiérarchiques -- value CDATA #IMPLIED -- contenu de l'élément par défaut -- > <!ELEMENT TEXTAREA - - (#PCDATA) -- champs de texte multilignes --> <!ATTLIST TEXTAREA %attrs; -- %coreattrs, %i18n, %events -- name CDATA #IMPLIED rows NUMBER #REQUIRED cols NUMBER #REQUIRED disabled (disabled) #IMPLIED -- indisponible dans ce contexte -- readonly (readonly) #IMPLIED tabindex NUMBER #IMPLIED -- position dans l'ordre de tabulation -- accesskey %Character; #IMPLIED -- touche de caractère pour l'accessibilité -- onfocus %Script; #IMPLIED -- l'élément a l'attention -- onblur %Script; #IMPLIED -- l'élément perd l'attention -- onselect %Script; #IMPLIED -- un certain texte a été sélectionné -- onchange %Script; #IMPLIED -- la valeur de l'élément a été changée -- %reserved; -- réservé pour une possible utilisation future -- > <!-- Le type #PCDATA est pour résoudre le problème du contenu mixte, selon la spécification, seuls les blancs sont autorisés à cet endroit ! --> <!ELEMENT FIELDSET - - (#PCDATA,LEGEND,(%flow;)*) -- groupe de commandes de formulaire --> <!ATTLIST FIELDSET %attrs; -- %coreattrs, %i18n, %events -- > <!ELEMENT LEGEND - - (%inline;)* -- légende du jeu de champs --> <!ENTITY % LAlign "(top|bottom|left|right)"> <!ATTLIST LEGEND %attrs; -- %coreattrs, %i18n, %events -- accesskey %Character; #IMPLIED -- touche de caractère pour l'accessibilité -- align %LAlign; #IMPLIED -- par rapport au jeu de champs -- > <!ELEMENT BUTTON - - (%flow;)* -(A|%formctrl;|FORM|ISINDEX|FIELDSET|IFRAME) -- bouton poussoir --> <!ATTLIST BUTTON %attrs; -- %coreattrs, %i18n, %events -- name CDATA #IMPLIED value CDATA #IMPLIED -- envoyé au serveur à la soumission -- type (button|submit|reset) submit -- pour utiliser comme bouton de formulaire -- disabled (disabled) #IMPLIED -- indisponible dans ce contexte -- tabindex NUMBER #IMPLIED -- position dans l'ordre de tabulation -- accesskey %Character; #IMPLIED -- touche de caractère pour l'accessibilité -- onfocus %Script; #IMPLIED -- l'élément a l'attention -- onblur %Script; #IMPLIED -- l'élément perd l'attention -- %reserved; -- réservé pour une possible utilisation future -- > <!--======================= Tables =======================================--> <!-- Norme des tables HTML IETF, voir [RFC1942] --> <!-- L'attribut BORDER fixe l'épaisseur du cadre autour de la table. Les unités par défaut sont en pixels écran. L'attribut FRAME spécifie quelles parties du cadre autour de la table devraient être restituées. Les valeurs ne sont pas les mêmes que COLS pour éviter un conflit de nom avec l'attribut VALIGN. La valeur "border" est incluse pour rétro-compatibilité avec <TABLE BORDER> qui produit frame=border et border=implied. Pour <TABLE BORDER=1>, on a border=1 et frame=implied. Auquel cas, il vaut mieux traiter cela comme frame=border pour rétro-compatibilité avec; les navigateurs existants. --> <!ENTITY % TFrame "(void|above|below|hsides|lhs|rhs|vsides|box|border)"> <!-- L'attribut RULES définit quelles règles dessiner entre les cellules : Si l'attribut RULES est absent, alors supposer : "none" si l'attribut BORDER est absent ou bien BORDER=0, sinon "all" --> <!ENTITY % TRules "(none | groups | rows | cols | all)"> <!-- Placement horizontal de la table relativement au document --> <!ENTITY % TAlign "(left|center|right)"> <!-- Attributs d'alignement horizontal pour le contenu des cellules --> <!ENTITY % cellhalign "align (left|center|right|justify|char) #IMPLIED char %Character; #IMPLIED -- caractère d'alignement, e.g. char=':' -- charoff %Length; #IMPLIED -- décalage pour le caractère d'alignement --" > <!-- Attributs d'alignement vertical pour le contenu des cellules --> <!ENTITY % cellvalign "valign (top|middle|bottom|baseline) #IMPLIED" > <!ELEMENT TABLE - - (CAPTION?, (COL*|COLGROUP*), THEAD?, TFOOT?, TBODY+)> <!ELEMENT CAPTION - - (%inline;)* -- légende de la table --> <!ELEMENT THEAD - O (TR)+ -- en-tête de la table --> <!ELEMENT TFOOT - O (TR)+ -- pied de la table --> <!ELEMENT TBODY O O (TR)+ -- corps de la table --> <!ELEMENT COLGROUP - O (COL)* -- groupe de colonnes de table --> <!ELEMENT COL - O EMPTY -- colonne de table --> <!ELEMENT TR - O (TH|TD)+ -- rangée de table --> <!ELEMENT (TH|TD) - O (%flow;)* -- cellule de rubrique ou de données de table --> <!ATTLIST TABLE -- élément table -- %attrs; -- %coreattrs, %i18n, %events -- summary %Text; #IMPLIED -- objet/structure pour sortie vocale -- width %Length; #IMPLIED -- largeur de la table -- border %Pixels; #IMPLIED -- épaisseur du cadre autour de la table -- frame %TFrame; #IMPLIED -- quelles parties du cadre restituer -- rules %TRules; #IMPLIED -- règles entre rangées et colonnes -- cellspacing %Length; #IMPLIED -- espacement entre cellules -- cellpadding %Length; #IMPLIED -- espacement à l'intérieur des cellules -- align %TAlign; #IMPLIED -- position de la table par rapport à la fenêtre -- bgcolor %Color; #IMPLIED -- couleur d'arrière-plan des cellules -- %reserved; -- réservé pour une possible utilisation future -- datapagesize CDATA #IMPLIED -- réservé pour une possible utilisation future -- > <!ENTITY % CAlign "(top|bottom|left|right)"> <!ATTLIST CAPTION %attrs; -- %coreattrs, %i18n, %events -- align %CAlign; #IMPLIED -- relativement à la table -- > <!-- COLGROUP regroupe un jeu d'éléments COL. Il permet de regrouper plusieurs colonnes en relation sémantique. --> <!ATTLIST COLGROUP %attrs; -- %coreattrs, %i18n, %events -- span NUMBER 1 -- nombre de colonnes par défaut dans le groupe -- width %MultiLength; #IMPLIED -- largeur par défaut des éléments COL contenus -- %cellhalign; %cellvalign; -- alignement vertical dans les cellules -- > <!-- Les éléments COL définissent les propriétés d'alignement des cellules dans une ou plusieurs colonnes. L'attribut WIDTH spécifie la largeur des colonnes, par exemple : width=64 largeur en pixelx écran width=0.5* largeur relative de 0.5 L'attribut SPAN entraîne l'application des attributs d'un élément COL sur plus d'une colonne. --> <!ATTLIST COL -- groupes et propriétés de colonnes -- %attrs; -- %coreattrs, %i18n, %events -- span NUMBER 1 -- les attributs de COL affectent N colonnes -- width %MultiLength; #IMPLIED -- spécification de largeur de colonne -- %cellhalign; -- alignement horizontal dans les cellules -- %cellvalign; -- alignement vertical dans les cellules -- > <!-- Utiliser THEAD pour dupliquer les en-têtes lors d'une rupture de la table hors des limites de la page, ou pour avoir des en-têtes statiques quand les sections TBODY sont restituées en panneau défilant. Utiliser TFOOT pour dupliquer les pieds lors d'une rupture de la table hors des limites de la page, ou pour avoir des pieds statiques quand les sections TBODY sont restituées en panneau défilant. Utiliser plusieurs sections TBODY quand il y a besoin de règles entre les groupes de rangées de table. --> <!ATTLIST (THEAD|TBODY|TFOOT) -- section de table -- %attrs; -- %coreattrs, %i18n, %events -- %cellhalign; -- alignement horizontal dans les cellules -- %cellvalign; -- alignement vertical dans les cellules -- > <!ATTLIST TR -- rangée de table -- %attrs; -- %coreattrs, %i18n, %events -- %cellhalign; -- alignement horizontal dans les cellules -- %cellvalign; -- alignement vertical dans les cellules -- bgcolor %Color; #IMPLIED -- couleur d'arrière-plan pour une rangée -- > <!-- L'attribut scope est plus simple que l'attribut headers pour les tables communes --> <!ENTITY % Scope "(row|col|rowgroup|colgroup)"> <!-- TH est pour les rubriques, TD pour les données, mais pour les cellules ambivalentes, utiliser TD --> <!ATTLIST (TH|TD) -- cellule de rubrique, ou de données -- %attrs; -- %coreattrs, %i18n, %events -- abbr %Text; #IMPLIED -- abréviation pour une cellule de rubrique -- axis CDATA #IMPLIED -- liste de rubriques en relation, séparées par des virgules -- headers IDREFS #IMPLIED -- liste des id des cellules de rubrique -- scope %Scope; #IMPLIED -- portée couverte par les cellules de rubrique -- rowspan NUMBER 1 -- nombre de rangées couvertes par la cellule -- colspan NUMBER 1 -- nombre de colonnes couvertes par la cellule -- %cellhalign; -- alignement horizontal dans les cellules -- %cellvalign; -- alignement vertical dans les cellules -- nowrap (nowrap) #IMPLIED -- supprime le saut de ligne -- bgcolor %Color; #IMPLIED -- couleur d'arrière-plan de la cellule -- width %Length; #IMPLIED -- largeur de la cellule -- height %Length; #IMPLIED -- hauteur de la cellule -- > <!--================== Cadres du document ===================================--> <!-- Le modèle de contenu des documents HTML dépend de ce qui suit la section HEAD, un élément FRAMESET ou bien BODY. L'absence courante de la balise ouvrante de BODY fait qu'il est irréaliste de définir le modèle de contenu sans utiliser une section marquée. --> <![ %HTML.Frameset; [ <!ELEMENT FRAMESET - - ((FRAMESET|FRAME)+ & NOFRAMES?) -- subdivision de fenêtre --> <!ATTLIST FRAMESET %coreattrs; -- id, class, style, title -- rows %MultiLengths; #IMPLIED -- liste de longueurs, par défaut : 100% (1 rangée) -- cols %MultiLengths; #IMPLIED -- liste de longueurs, par défaut : 100% (1 colonne) -- onload %Script; #IMPLIED -- tous les cadres ont été chargés -- onunload %Script; #IMPLIED -- tous les cadres ont été retirés -- > ]]> <![ %HTML.Frameset; [ <!-- Les noms de cadre réservés commencent par un caractère "_", sinon ils commencent par une lettre --> <!ELEMENT FRAME - O EMPTY -- sous-fenêtre --> <!ATTLIST FRAME %coreattrs; -- id, class, style, title -- longdesc %URI; #IMPLIED -- lien vers une description longue (complément de l'attribut title) -- name CDATA #IMPLIED -- nom du cadre pour ciblage -- src %URI; #IMPLIED -- source du contenu du cadre -- frameborder (1|0) 1 -- bordure du cadre ou non -- marginwidth %Pixels; #IMPLIED -- largeur des marges horizontales en pixels -- marginheight %Pixels; #IMPLIED -- hauteur des marges verticales en pixels -- noresize (noresize) #IMPLIED -- autoriser le redimentionnement des cadres -- scrolling (yes|no|auto) auto -- barre de défilement ou pas -- > ]]> <!ELEMENT IFRAME - - (%flow;)* -- sous-fenêtre en-ligne --> <!ATTLIST IFRAME %coreattrs; -- id, class, style, title -- longdesc %URI; #IMPLIED -- lien vers une description longue (complément de l'attribut title) -- name CDATA #IMPLIED -- nom du cadre pour ciblage -- src %URI; #IMPLIED -- source du contenu du cadre -- frameborder (1|0) 1 -- bordure du cadre ou non -- marginwidth %Pixels; #IMPLIED -- largeur des marges horizontales en pixels -- marginheight %Pixels; #IMPLIED -- hauteur des marges verticales en pixels -- scrolling (yes|no|auto) auto -- barre de défilement ou pas -- align %IAlign; #IMPLIED -- alignement vertical ou horizontal -- height %Length; #IMPLIED -- hauteur du cadre -- width %Length; #IMPLIED -- largeur du cadre -- > <![ %HTML.Frameset; [ <!ENTITY % noframes.content "(BODY) -(NOFRAMES)"> ]]> <!ENTITY % noframes.content "(%flow;)*"> <!ELEMENT NOFRAMES - - %noframes.content; -- conteneur de contenu de remplacement pour une restitution sans cadres --> <!ATTLIST NOFRAMES %attrs; -- %coreattrs, %i18n, %events -- > <!--================ En-tête du document =======================================--> <!-- %head.misc; defined earlier on as "SCRIPT|STYLE|META|LINK|OBJECT" --> <!ENTITY % head.content "TITLE & ISINDEX? & BASE?"> <!ELEMENT HEAD O O (%head.content;) +(%head.misc;) -- en-tête du document --> <!ATTLIST HEAD %i18n; -- lang, dir -- profile %URI; #IMPLIED -- dictionnaire nommé de méta-informations -- > <!-- L'élément TITLE n'est pas considéré faire partie du flux de texte. Il devrait être restituté, par exemple, comme titre de la page ou titre de fenêtre. Il ne peut y avoir qu'un titre exactement par document. --> <!ELEMENT TITLE - - (#PCDATA) -(%head.misc;) -- titre du document --> <!ATTLIST TITLE %i18n> <!ELEMENT ISINDEX - O EMPTY -- invite sur une seule ligne --> <!ATTLIST ISINDEX %coreattrs; -- id, class, style, title -- %i18n; -- lang, dir -- prompt %Text; #IMPLIED -- message d'invite --> <!ELEMENT BASE - O EMPTY -- URI de base du document --> <!ATTLIST BASE href %URI; #IMPLIED -- URI qui fait office d'URI de base -- target %FrameTarget; #IMPLIED -- restituer dans ce cadre -- > <!ELEMENT META - O EMPTY -- méta-information générique --> <!ATTLIST META %i18n; -- lang, dir, à utiliser avec l'attribut content -- http-equiv NAME #IMPLIED -- nom de l'en-tête de réponse HTTP -- name NAME #IMPLIED -- nom de la méta-information -- content CDATA #REQUIRED -- information associée -- scheme CDATA #IMPLIED -- selectionne la forme du contenu -- > <!ELEMENT STYLE - - %StyleSheet -- info de style --> <!ATTLIST STYLE %i18n; -- lang, dir, à utiliser avec l'attribut title -- type %ContentType; #REQUIRED -- type de contenu du langage de style -- media %MediaDesc; #IMPLIED -- conçu pour ces médias -- title %Text; #IMPLIED -- titre consultatif -- > <!ELEMENT SCRIPT - - %Script; -- déclarations de script --> <!ATTLIST SCRIPT charset %Charset; #IMPLIED -- encodage de caractères de la ressource reliée -- type %ContentType; #REQUIRED -- type de contenu du langage de script -- language CDATA #IMPLIED -- nom de langage de script prédéfini -- src %URI; #IMPLIED -- URI d'un script externe -- defer (defer) #IMPLIED -- l'agent utilisateur peut différer l'exécution du script -- event CDATA #IMPLIED -- réservé pour une possible utilisation future -- for %URI; #IMPLIED -- réservé pour une possible utilisation future -- > <!ELEMENT NOSCRIPT - - (%flow;)* -- conteneur du contenu de remplacement pour une restitution sans scripts --> <!ATTLIST NOSCRIPT %attrs; -- %coreattrs, %i18n, %events -- > <!--================ Structure du document ==================================--> <!ENTITY % version "version CDATA #FIXED '%HTML.Version;'"> <![ %HTML.Frameset; [ <!ENTITY % html.content "HEAD, FRAMESET"> ]]> <!ENTITY % html.content "HEAD, BODY"> <!ELEMENT HTML O O (%html.content;) -- élément racine du document --> <!ATTLIST HTML %i18n; -- lang, dir -- %version; >