interface HTMLElement : Element { // DOM tree accessors NodeList getElementsByClassName(in DOMString classNames); // dynamic markup insertion attribute DOMString innerHTML; attribute DOMString outerHTML; void insertAdjacentHTML(in DOMString position, in DOMString text); // metadata attributes attribute DOMString id; attribute DOMString title; attribute DOMString lang; attribute DOMString dir; attribute DOMString className; readonly attribute DOMTokenList classList; readonly attribute DOMStringMap dataset; // user interaction attribute boolean hidden; void click(); void scrollIntoView(); void scrollIntoView(in boolean top); attribute long tabIndex; void focus(); void blur(); attribute DOMString accessKey; readonly attribute DOMString accessKeyLabel; attribute boolean draggable; attribute DOMString contentEditable; readonly attribute boolean isContentEditable; attribute HTMLMenuElement contextMenu; attribute DOMString spellcheck; // command API readonly attribute DOMString commandType; readonly attribute DOMString label; readonly attribute DOMString icon; readonly attribute boolean disabled; readonly attribute boolean checked; // styling readonly attribute CSSStyleDeclaration style; // event handler IDL attributes attribute Function onabort; attribute Function onblur; attribute Function oncanplay; attribute Function oncanplaythrough; attribute Function onchange; attribute Function onclick; attribute Function oncontextmenu; attribute Function ondblclick; attribute Function ondrag; attribute Function ondragend; attribute Function ondragenter; attribute Function ondragleave; attribute Function ondragover; attribute Function ondragstart; attribute Function ondrop; attribute Function ondurationchange; attribute Function onemptied; attribute Function onended; attribute Function onerror; attribute Function onfocus; attribute Function onformchange; attribute Function onforminput; attribute Function oninput; attribute Function oninvalid; attribute Function onkeydown; attribute Function onkeypress; attribute Function onkeyup; attribute Function onload; attribute Function onloadeddata; attribute Function onloadedmetadata; attribute Function onloadstart; attribute Function onmousedown; attribute Function onmousemove; attribute Function onmouseout; attribute Function onmouseover; attribute Function onmouseup; attribute Function onmousewheel; attribute Function onpause; attribute Function onplay; attribute Function onplaying; attribute Function onprogress; attribute Function onratechange; attribute Function onreadystatechange; attribute Function onscroll; attribute Function onseeked; attribute Function onseeking; attribute Function onselect; attribute Function onshow; attribute Function onstalled; attribute Function onsubmit; attribute Function onsuspend; attribute Function ontimeupdate; attribute Function onvolumechange; attribute Function onwaiting; }; [TagName=html] interface HTMLHtmlElement : HTMLElement {}; [TagName=head] interface HTMLHeadElement : HTMLElement {}; [TagName=title] interface HTMLTitleElement : HTMLElement { attribute DOMString text; }; [TagName=base] interface HTMLBaseElement : HTMLElement { attribute DOMString href; attribute DOMString target; }; [TagName=link] interface HTMLLinkElement : HTMLElement { attribute boolean disabled; attribute DOMString href; attribute DOMString rel; readonly attribute DOMTokenList relList; attribute DOMString media; attribute DOMString hreflang; attribute DOMString type; [PutForwards=value] readonly attribute DOMSettableTokenList sizes; }; HTMLLinkElement implements LinkStyle; [TagName=meta] interface HTMLMetaElement : HTMLElement { attribute DOMString name; attribute DOMString httpEquiv; attribute DOMString content; }; [TagName=style] interface HTMLStyleElement : HTMLElement { attribute boolean disabled; attribute DOMString media; attribute DOMString type; attribute boolean scoped; }; HTMLStyleElement implements LinkStyle; [TagName=script] interface HTMLScriptElement : HTMLElement { attribute DOMString src; attribute boolean async; attribute boolean defer; attribute DOMString type; attribute DOMString charset; attribute DOMString text; }; [TagName=body] interface HTMLBodyElement : HTMLElement { attribute Function onafterprint; attribute Function onbeforeprint; attribute Function onbeforeunload; attribute Function onblur; attribute Function onerror; attribute Function onfocus; attribute Function onhashchange; attribute Function onload; attribute Function onmessage; attribute Function onoffline; attribute Function ononline; attribute Function onpopstate; attribute Function onpagehide; attribute Function onpageshow; attribute Function onredo; attribute Function onresize; attribute Function onstorage; attribute Function onundo; attribute Function onunload; }; [TagName=h1] interface HTMLHeadingElement : HTMLElement {}; [TagName=p] interface HTMLParagraphElement : HTMLElement {}; [TagName=hr] interface HTMLHRElement : HTMLElement {}; [TagName=pre] interface HTMLPreElement : HTMLElement {}; [TagName=blockquote] interface HTMLQuoteElement : HTMLElement { attribute DOMString cite; }; [TagName=ol] interface HTMLOListElement : HTMLElement { attribute boolean reversed; attribute long start; }; [TagName=ul] interface HTMLUListElement : HTMLElement {}; [TagName=li] interface HTMLLIElement : HTMLElement { attribute long value; }; [TagName=dl] interface HTMLDListElement : HTMLElement {}; [TagName=div] interface HTMLDivElement : HTMLElement {}; [TagName=a] interface HTMLAnchorElement : HTMLElement { stringifier attribute DOMString href; attribute DOMString target; attribute DOMString rel; readonly attribute DOMTokenList relList; attribute DOMString media; attribute DOMString hreflang; attribute DOMString type; attribute DOMString text; // URL decomposition IDL attributes attribute DOMString protocol; attribute DOMString host; attribute DOMString hostname; attribute DOMString port; attribute DOMString pathname; attribute DOMString search; attribute DOMString hash; }; [TagName=time] interface HTMLTimeElement : HTMLElement { attribute DOMString dateTime; attribute boolean pubDate; readonly attribute Date valueAsDate; }; [TagName=span] interface HTMLSpanElement : HTMLElement {}; [TagName=br] interface HTMLBRElement : HTMLElement {}; interface HTMLModElement : HTMLElement { attribute DOMString cite; attribute DOMString dateTime; }; [TagName=img] interface HTMLImageElement : HTMLElement { attribute DOMString alt; attribute DOMString src; attribute DOMString useMap; attribute boolean isMap; attribute unsigned long width; attribute unsigned long height; readonly attribute unsigned long naturalWidth; readonly attribute unsigned long naturalHeight; readonly attribute boolean complete; }; [TagName=iframe] interface HTMLIFrameElement : HTMLElement { attribute DOMString src; attribute DOMString srcdoc; attribute DOMString name; [PutForwards=value] readonly attribute DOMSettableTokenList sandbox; attribute boolean seamless; attribute DOMString width; attribute DOMString height; readonly attribute Document contentDocument; readonly attribute WindowProxy contentWindow; }; [TagName=embed] interface HTMLEmbedElement : HTMLElement { attribute DOMString src; attribute DOMString type; attribute DOMString width; attribute DOMString height; }; [TagName=object] interface HTMLObjectElement : HTMLElement { attribute DOMString data; attribute DOMString type; attribute DOMString name; attribute DOMString useMap; readonly attribute HTMLFormElement form; attribute DOMString width; attribute DOMString height; readonly attribute Document contentDocument; readonly attribute WindowProxy contentWindow; readonly attribute boolean willValidate; readonly attribute ValidityState validity; readonly attribute DOMString validationMessage; boolean checkValidity(); void setCustomValidity(in DOMString error); }; [TagName=param] interface HTMLParamElement : HTMLElement { attribute DOMString name; attribute DOMString value; }; [TagName=video] interface HTMLVideoElement : HTMLMediaElement { attribute DOMString width; attribute DOMString height; readonly attribute unsigned long videoWidth; readonly attribute unsigned long videoHeight; attribute DOMString poster; }; [TagName=audio] interface HTMLAudioElement : HTMLMediaElement {}; [TagName=source] interface HTMLSourceElement : HTMLElement { attribute DOMString src; attribute DOMString type; attribute DOMString media; }; interface HTMLMediaElement : HTMLElement { // error state readonly attribute MediaError error; // network state attribute DOMString src; readonly attribute DOMString currentSrc; const unsigned short NETWORK_EMPTY = 0; const unsigned short NETWORK_IDLE = 1; const unsigned short NETWORK_LOADING = 2; const unsigned short NETWORK_NO_SOURCE = 3; readonly attribute unsigned short networkState; attribute DOMString preload; readonly attribute TimeRanges buffered; void load(); DOMString canPlayType(in DOMString type); // ready state const unsigned short HAVE_NOTHING = 0; const unsigned short HAVE_METADATA = 1; const unsigned short HAVE_CURRENT_DATA = 2; const unsigned short HAVE_FUTURE_DATA = 3; const unsigned short HAVE_ENOUGH_DATA = 4; readonly attribute unsigned short readyState; readonly attribute boolean seeking; // playback state attribute float currentTime; readonly attribute float startTime; readonly attribute float duration; readonly attribute boolean paused; attribute float defaultPlaybackRate; attribute float playbackRate; readonly attribute TimeRanges played; readonly attribute TimeRanges seekable; readonly attribute boolean ended; attribute boolean autoplay; attribute boolean loop; void play(); void pause(); // controls attribute boolean controls; attribute float volume; attribute boolean muted; }; interface MediaError { const unsigned short MEDIA_ERR_ABORTED = 1; const unsigned short MEDIA_ERR_NETWORK = 2; const unsigned short MEDIA_ERR_DECODE = 3; const unsigned short MEDIA_ERR_SRC_NOT_SUPPORTED = 4; readonly attribute unsigned short code; }; interface TimeRanges { readonly attribute unsigned long length; float start(in unsigned long index); float end(in unsigned long index); }; [TagName=canvas] interface HTMLCanvasElement : HTMLElement { attribute unsigned long width; attribute unsigned long height; DOMString toDataURL(in optional DOMString type, in any... args); object getContext(in DOMString contextId); }; [TagName=map] interface HTMLMapElement : HTMLElement { attribute DOMString name; readonly attribute HTMLCollection areas; readonly attribute HTMLCollection images; }; interface HTMLAreaElement : HTMLElement { attribute DOMString alt; attribute DOMString coords; attribute DOMString shape; stringifier attribute DOMString href; attribute DOMString target; attribute DOMString rel; readonly attribute DOMTokenList relList; attribute DOMString media; attribute DOMString hreflang; attribute DOMString type; // URL decomposition IDL attributes attribute DOMString protocol; attribute DOMString host; attribute DOMString hostname; attribute DOMString port; attribute DOMString pathname; attribute DOMString search; attribute DOMString hash; }; [TagName=table] interface HTMLTableElement : HTMLElement { attribute HTMLTableCaptionElement caption; HTMLElement createCaption(); void deleteCaption(); attribute HTMLTableSectionElement tHead; HTMLElement createTHead(); void deleteTHead(); attribute HTMLTableSectionElement tFoot; HTMLElement createTFoot(); void deleteTFoot(); readonly attribute HTMLCollection tBodies; HTMLElement createTBody(); readonly attribute HTMLCollection rows; HTMLElement insertRow(in optional long index); void deleteRow(in long index); attribute DOMString summary; }; [TagName=caption] interface HTMLTableCaptionElement : HTMLElement {}; [TagName=colgroup] interface HTMLTableColElement : HTMLElement { attribute unsigned long span; }; [TagName=tbody,tfoot] interface HTMLTableSectionElement : HTMLElement { readonly attribute HTMLCollection rows; HTMLElement insertRow(in optional long index); void deleteRow(in long index); }; [TagName=tr] interface HTMLTableRowElement : HTMLElement { readonly attribute long rowIndex; readonly attribute long sectionRowIndex; readonly attribute HTMLCollection cells; HTMLElement insertCell(in optional long index); void deleteCell(in long index); }; [TagName=td] interface HTMLTableDataCellElement : HTMLTableCellElement {}; [TagName=th] interface HTMLTableHeaderCellElement : HTMLTableCellElement { attribute DOMString scope; }; interface HTMLTableCellElement : HTMLElement { attribute unsigned long colSpan; attribute unsigned long rowSpan; [PutForwards=value] readonly attribute DOMSettableTokenList headers; readonly attribute long cellIndex; }; [TagName=form] interface HTMLFormElement : HTMLElement { attribute DOMString acceptCharset; attribute DOMString action; attribute DOMString autocomplete; attribute DOMString enctype; attribute DOMString method; attribute DOMString name; attribute boolean noValidate; attribute DOMString target; readonly attribute HTMLFormControlsCollection elements; readonly attribute long length; caller getter any item(in unsigned long index); caller getter any namedItem(in DOMString name); void submit(); void reset(); boolean checkValidity(); void dispatchFormInput(); void dispatchFormChange(); }; [TagName=fieldset] interface HTMLFieldSetElement : HTMLElement { attribute boolean disabled; readonly attribute HTMLFormElement form; attribute DOMString name; readonly attribute DOMString type; readonly attribute HTMLFormControlsCollection elements; readonly attribute boolean willValidate; readonly attribute ValidityState validity; readonly attribute DOMString validationMessage; boolean checkValidity(); void setCustomValidity(in DOMString error); }; [TagName=legend] interface HTMLLegendElement : HTMLElement { readonly attribute HTMLFormElement form; }; [TagName=label] interface HTMLLabelElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString htmlFor; readonly attribute HTMLElement control; }; [TagName=input] interface HTMLInputElement : HTMLElement { attribute DOMString accept; attribute DOMString alt; attribute DOMString autocomplete; attribute boolean autofocus; attribute boolean defaultChecked; attribute boolean checked; attribute boolean disabled; readonly attribute HTMLFormElement form; readonly attribute FileList files; attribute DOMString formAction; attribute DOMString formEnctype; attribute DOMString formMethod; attribute boolean formNoValidate; attribute DOMString formTarget; attribute DOMString height; attribute boolean indeterminate; readonly attribute HTMLElement list; attribute DOMString max; attribute long maxLength; attribute DOMString min; attribute boolean multiple; attribute DOMString name; attribute DOMString pattern; attribute DOMString placeholder; attribute boolean readOnly; attribute boolean required; attribute unsigned long size; attribute DOMString src; attribute DOMString step; attribute DOMString type; attribute DOMString defaultValue; attribute DOMString value; attribute Date valueAsDate; attribute double valueAsNumber; readonly attribute HTMLOptionElement selectedOption; attribute DOMString width; void stepUp(in optional long n); void stepDown(in optional long n); readonly attribute boolean willValidate; readonly attribute ValidityState validity; readonly attribute DOMString validationMessage; boolean checkValidity(); void setCustomValidity(in DOMString error); readonly attribute NodeList labels; void select(); attribute unsigned long selectionStart; attribute unsigned long selectionEnd; void setSelectionRange(in unsigned long start, in unsigned long end); }; [TagName=button] interface HTMLButtonElement : HTMLElement { attribute boolean autofocus; attribute boolean disabled; readonly attribute HTMLFormElement form; attribute DOMString formAction; attribute DOMString formEnctype; attribute DOMString formMethod; attribute DOMString formNoValidate; attribute DOMString formTarget; attribute DOMString name; attribute DOMString type; attribute DOMString value; readonly attribute boolean willValidate; readonly attribute ValidityState validity; readonly attribute DOMString validationMessage; boolean checkValidity(); void setCustomValidity(in DOMString error); readonly attribute NodeList labels; }; [TagName=select] interface HTMLSelectElement : HTMLElement { attribute boolean autofocus; attribute boolean disabled; readonly attribute HTMLFormElement form; attribute boolean multiple; attribute DOMString name; attribute unsigned long size; readonly attribute DOMString type; readonly attribute HTMLOptionsCollection options; attribute unsigned long length; caller getter any item(in unsigned long index); caller getter any namedItem(in DOMString name); void add(in HTMLElement element, in optional HTMLElement before); void add(in HTMLElement element, in long before); void remove(in long index); readonly attribute HTMLCollection selectedOptions; attribute long selectedIndex; attribute DOMString value; readonly attribute boolean willValidate; readonly attribute ValidityState validity; readonly attribute DOMString validationMessage; boolean checkValidity(); void setCustomValidity(in DOMString error); readonly attribute NodeList labels; }; [TagName=datalist] interface HTMLDataListElement : HTMLElement { readonly attribute HTMLCollection options; }; [TagName=optgroup] interface HTMLOptGroupElement : HTMLElement { attribute boolean disabled; attribute DOMString label; }; [TagName=option] interface HTMLOptionElement : HTMLElement { attribute boolean disabled; readonly attribute HTMLFormElement form; attribute DOMString label; attribute boolean defaultSelected; attribute boolean selected; attribute DOMString value; attribute DOMString text; readonly attribute long index; }; [TagName=textarea] interface HTMLTextAreaElement : HTMLElement { attribute boolean autofocus; attribute unsigned long cols; attribute boolean disabled; readonly attribute HTMLFormElement form; attribute long maxLength; attribute DOMString name; attribute DOMString placeholder; attribute boolean readOnly; attribute boolean required; attribute unsigned long rows; attribute DOMString wrap; readonly attribute DOMString type; attribute DOMString defaultValue; attribute DOMString value; readonly attribute unsigned long textLength; readonly attribute boolean willValidate; readonly attribute ValidityState validity; readonly attribute DOMString validationMessage; boolean checkValidity(); void setCustomValidity(in DOMString error); readonly attribute NodeList labels; void select(); attribute unsigned long selectionStart; attribute unsigned long selectionEnd; void setSelectionRange(in unsigned long start, in unsigned long end); }; [TagName=keygen] interface HTMLKeygenElement : HTMLElement { attribute boolean autofocus; attribute DOMString challenge; attribute boolean disabled; readonly attribute HTMLFormElement form; attribute DOMString keytype; attribute DOMString name; readonly attribute DOMString type; readonly attribute boolean willValidate; readonly attribute ValidityState validity; readonly attribute DOMString validationMessage; boolean checkValidity(); void setCustomValidity(in DOMString error); readonly attribute NodeList labels; }; [TagName=output] interface HTMLOutputElement : HTMLElement { [PutForwards=value] readonly attribute DOMSettableTokenList htmlFor; readonly attribute HTMLFormElement form; attribute DOMString name; readonly attribute DOMString type; attribute DOMString defaultValue; attribute DOMString value; readonly attribute boolean willValidate; readonly attribute ValidityState validity; readonly attribute DOMString validationMessage; boolean checkValidity(); void setCustomValidity(in DOMString error); readonly attribute NodeList labels; }; [TagName=progress] interface HTMLProgressElement : HTMLElement { attribute float value; attribute float max; readonly attribute float position; readonly attribute HTMLFormElement form; readonly attribute NodeList labels; }; [TagName=meter] interface HTMLMeterElement : HTMLElement { attribute float value; attribute float min; attribute float max; attribute float low; attribute float high; attribute float optimum; readonly attribute HTMLFormElement form; readonly attribute NodeList labels; }; interface ValidityState { readonly attribute boolean valueMissing; readonly attribute boolean typeMismatch; readonly attribute boolean patternMismatch; readonly attribute boolean tooLong; readonly attribute boolean rangeUnderflow; readonly attribute boolean rangeOverflow; readonly attribute boolean stepMismatch; readonly attribute boolean customError; readonly attribute boolean valid; }; [TagName=details] interface HTMLDetailsElement : HTMLElement { attribute boolean open; }; [TagName=command] interface HTMLCommandElement : HTMLElement { attribute DOMString type; attribute DOMString label; attribute DOMString icon; attribute boolean disabled; attribute boolean checked; attribute DOMString radiogroup; }; [TagName=menu] interface HTMLMenuElement : HTMLElement { attribute DOMString type; attribute DOMString label; }; [TagName=applet] interface HTMLAppletElement : HTMLElement { attribute DOMString align; attribute DOMString alt; attribute DOMString archive; attribute DOMString code; attribute DOMString codeBase; attribute DOMString height; attribute unsigned long hspace; attribute DOMString name; attribute DOMString _object; // the underscore is not part of the identifier attribute unsigned long vspace; attribute DOMString width; }; [TagName=marquee] interface HTMLMarqueeElement : HTMLElement { attribute DOMString behavior; attribute DOMString bgColor; attribute DOMString direction; attribute DOMString height; attribute unsigned long hspace; attribute long loop; attribute unsigned long scrollAmount; attribute unsigned long scrollDelay; attribute DOMString trueSpeed; attribute unsigned long vspace; attribute DOMString width; attribute Function onbounce; attribute Function onfinish; attribute Function onstart; void start(); void stop(); }; [TagName=frameset] interface HTMLFrameSetElement : HTMLElement { attribute DOMString cols; attribute DOMString rows; attribute Function onafterprint; attribute Function onbeforeprint; attribute Function onbeforeunload; attribute Function onblur; attribute Function onerror; attribute Function onfocus; attribute Function onhashchange; attribute Function onload; attribute Function onmessage; attribute Function onoffline; attribute Function ononline; attribute Function onpagehide; attribute Function onpageshow; attribute Function onpopstate; attribute Function onredo; attribute Function onresize; attribute Function onstorage; attribute Function onundo; attribute Function onunload; }; [TagName=frame] interface HTMLFrameElement : HTMLElement { attribute DOMString frameBorder; attribute DOMString longDesc; attribute DOMString marginHeight; attribute DOMString marginWidth; attribute DOMString name; attribute boolean noResize; attribute DOMString scrolling; attribute DOMString src; readonly attribute Document contentDocument; }; [TagName=a] interface HTMLAnchorElement : HTMLElement { attribute DOMString coords; attribute DOMString charset; attribute DOMString name; attribute DOMString rev; attribute DOMString shape; }; [TagName=area] interface HTMLAreaElement : HTMLElement { attribute boolean noHref; }; [TagName=basefont] interface HTMLBaseFontElement : HTMLElement { attribute DOMString color; attribute DOMString face; attribute long size; }; [Supplemental,TagName=body] interface HTMLBodyElement : HTMLElement { attribute DOMString text; attribute DOMString bgColor; attribute DOMString background; attribute DOMString link; attribute DOMString vLink; attribute DOMString aLink; }; [Supplemental,TagName=br] interface HTMLBRElement { attribute DOMString clear; }; [Supplemental,TagName=caption] interface HTMLTableCaptionElement { attribute DOMString align; }; [Supplemental,TagName=col] interface HTMLTableColElement { attribute DOMString align; attribute DOMString ch; attribute DOMString chOff; attribute DOMString vAlign; attribute DOMString width; }; interface HTMLDirectoryElement : HTMLElement { attribute boolean compact; }; [Supplemental,TagName=div] interface HTMLDivElement { attribute DOMString align; }; [Supplemental,TagName=dl] interface HTMLDListElement { attribute boolean compact; }; [Supplemental,TagName=embed] interface HTMLEmbedElement { attribute DOMString align; attribute DOMString name; }; [TagName=font] interface HTMLFontElement : HTMLElement { attribute DOMString color; attribute DOMString face; attribute DOMString size; }; [Supplemental,TagName=h1,h2,h3,h4,h5,h6] interface HTMLHeadingElement { attribute DOMString align; }; [Supplemental,TagName=hr] interface HTMLHRElement { attribute DOMString align; attribute DOMString color; attribute boolean noShade; attribute DOMString size; attribute DOMString width; }; [Supplemental,TagName=html] interface HTMLHtmlElement { attribute DOMString version; }; [Supplemental,TagName=iframe] interface HTMLIFrameElement { attribute DOMString align; attribute DOMString frameBorder; attribute DOMString longDesc; attribute DOMString marginHeight; attribute DOMString marginWidth; attribute DOMString scrolling; }; [Supplemental,TagName=img] interface HTMLImageElement { attribute DOMString name; attribute DOMString align; attribute DOMString border; attribute unsigned long hspace; attribute DOMString longDesc; attribute unsigned long vspace; }; [Supplemental,TagName=input] interface HTMLInputElement { attribute DOMString align; attribute DOMString useMap; }; [Supplemental,TagName=legend] interface HTMLLegendElement { attribute DOMString align; }; [Supplemental,TagName=li] interface HTMLLIElement { attribute DOMString type; }; [Supplemental,TagName=link] interface HTMLLinkElement { attribute DOMString charset; attribute DOMString rev; attribute DOMString target; }; [Supplemental,TagName=menu] interface HTMLMenuElement { attribute boolean compact; }; [Supplemental,TagName=meta] interface HTMLMetaElement { attribute DOMString scheme; }; [Supplemental,TagName=object] interface HTMLObjectElement { attribute DOMString align; attribute DOMString archive; attribute DOMString border; attribute DOMString code; attribute DOMString codeBase; attribute DOMString codeType; attribute boolean declare; attribute unsigned long hspace; attribute DOMString standby; attribute unsigned long vspace; }; [Supplemental,TagName=ol] interface HTMLOListElement { attribute boolean compact; attribute DOMString type; }; [Supplemental,TagName=p] interface HTMLParagraphElement { attribute DOMString align; }; [Supplemental,TagName=param] interface HTMLParamElement { attribute DOMString type; attribute DOMString valueType; }; [Supplemental,TagName=pre] interface HTMLPreElement { attribute unsigned long width; }; [Supplemental,TagName=script] interface HTMLScriptElement { attribute DOMString event; attribute DOMString htmlFor; }; [Supplemental,TagName=table] interface HTMLTableElement { attribute DOMString align; attribute DOMString bgColor; attribute DOMString border; attribute DOMString cellPadding; attribute DOMString cellSpacing; attribute DOMString frame; attribute DOMString rules; attribute DOMString width; }; [Supplemental,TagName=tbody,tfoot] interface HTMLTableSectionElement { attribute DOMString align; attribute DOMString ch; attribute DOMString chOff; attribute DOMString vAlign; }; [Supplemental,TagName=td] interface HTMLTableCellElement { attribute DOMString abbr; attribute DOMString align; attribute DOMString axis; attribute DOMString bgColor; attribute DOMString ch; attribute DOMString chOff; attribute DOMString height; attribute boolean noWrap; attribute DOMString vAlign; attribute DOMString width; }; [Supplemental,TagName=tr] interface HTMLTableRowElement { attribute DOMString align; attribute DOMString bgColor; attribute DOMString ch; attribute DOMString chOff; attribute DOMString vAlign; }; [Supplemental,TagName=ul] interface HTMLUListElement { attribute boolean compact; attribute DOMString type; }; // the-thead-element [TagName=thead] interface HTMLTheadElement : HTMLTableSectionElement {}; // the-dd-element [TagName=dd] interface HTMLDdElement : HTMLElement {}; // the-address-element [TagName=address] interface HTMLAddressElement : HTMLElement {}; // the-nav-element [TagName=nav] interface HTMLNavElement : HTMLElement {}; // the-tfoot-element [TagName=tfoot] interface HTMLTFootElement : HTMLTableSectionElement {}; // the-sub-and-sup-elements [TagName=sub] interface HTMLSubElement : HTMLElement {}; [TagName=sup] interface HTMLSupElement : HTMLElement {}; // the-bdo-element [TagName=bdo] interface HTMLBdoElement : HTMLElement {}; // the-rp-element [TagName=rp] interface HTMLRpElement : HTMLElement {}; // the-rt-element [TagName=rt] interface HTMLRtElement : HTMLElement {}; // the-mark-element [TagName=mark] interface HTMLMarkElement : HTMLElement {}; // the-kbd-element [TagName=kbd] interface HTMLKbdElement : HTMLElement {}; // the-dfn-element [TagName=dfn] interface HTMLDfnElement : HTMLElement {}; // the-cite-element [TagName=cite] interface HTMLCiteElement : HTMLElement {}; // the-ins-element [TagName=ins] interface HTMLInsElement : HTMLModElement {}; // the-b-element [TagName=b] interface HTMLBElement : HTMLElement {}; // the-noscript-element [TagName=noscript] interface HTMLNoscriptElement : HTMLElement {}; // the-figure-element [TagName=figure] interface HTMLFigureElement : HTMLElement {}; // the-code-element [TagName=code] interface HTMLCodeElement : HTMLElement {}; // the-q-element [TagName=q] interface HTMLQElement : HTMLQuoteElement {}; // the-strong-element [TagName=strong] interface HTMLStrongElement : HTMLElement {}; // the-header-element [TagName=header] interface HTMLHeaderElement : HTMLElement {}; // the-hgroup-element [TagName=hgroup] interface HTMLHgroupElement : HTMLElement {}; // the-aside-element [TagName=aside] interface HTMLAsideElement : HTMLElement {}; // the-samp-element [TagName=samp] interface HTMLSampElement : HTMLElement {}; // the-section-element [TagName=section] interface HTMLSectionElement : HTMLElement {}; // the-dt-element [TagName=dt] interface HTMLDtElement : HTMLElement {}; // the-col-element [TagName=col] interface HTMLColElement : HTMLTableColElement {}; // the-i-element [TagName=i] interface HTMLIElement : HTMLElement {}; // the-var-element [TagName=var] interface HTMLVarElement : HTMLElement {}; // the-abbr-element [TagName=abbr] interface HTMLAbbrElement : HTMLElement {}; // the-small-element [TagName=small] interface HTMLSmallElement : HTMLElement {}; // the-footer-element [TagName=footer] interface HTMLFooterElement : HTMLElement {}; // the-ruby-element [TagName=ruby] interface HTMLRubyElement : HTMLElement {}; // the-article-element [TagName=article] interface HTMLArticleElement : HTMLElement {}; // the-del-element [TagName=del] interface HTMLDelElement : HTMLModElement {}; // the-em-element [TagName=em] interface HTMLEmElement : HTMLElement {};