HTML 5

Draft Recommendation — 7 July 2008

10. Rendering and user-agent behavior

This section will probably include details on how to render DATAGRID (including its pseudo-elements), drag-and-drop, etc, in a visual medium, in concert with CSS. Terms that need to be defined include: sizing of embedded content

CSS UAs in visual media must, when scrolling a page to a fragment identifier, align the top of the viewport with the target element's top border edge.

must define letting the user "obtain a physical form (or a representation of a physical form)" of a document (printing) and what this means for the UA, in particular creating a new view for the print media.

Must define that in CSS, tag names in HTML documents, and class names in quirks mode documents, are case-insensitive.

10.1 Rendering and the DOM

This section is wrong. mediaMode will end up on Window, I think. All views implement Window.

Any object implement the AbstractView interface must also implement the MediaModeAbstractView interface.

interface MediaModeAbstractView {
  readonly attribute DOMString mediaMode;
};

The mediaMode attribute on objects implementing the MediaModeAbstractView interface must return the string that represents the canvas' current rendering mode (screen, print, etc). This is a lowercase string, as defined by the CSS specification. [CSS21]

Some user agents may support multiple media, in which case there will exist multiple objects implementing the AbstractView interface. Only the default view implements the Window interface. The other views can be reached using the view attribute of the UIEvent interface, during event propagation. There is no way currently to enumerate all the views.

10.2 Rendering and menus/toolbars

10.2.1 The 'icon' property

UAs should use the command's Icon as the default generic icon provided by the user agent when the 'icon' property computes to 'auto' on an element that either defines a command or refers to one using the command attribute, but when the property computes to an actual image, it should use that image instead.

10.3 Obsolete elements, attributes, and APIs

10.3.1 The body element

Need to define the content attributes in terms of CSS or something.

[XXX] interface HTMLDocument {
           attribute DOMString fgColor;
           attribute DOMString bgColor;
           attribute DOMString linkColor;
           attribute DOMString vlinkColor;
           attribute DOMString alinkColor;
};

The fgColor attribute on the Document object must reflect the text attribute on the body element.

The bgColor attribute on the Document object must reflect the bgcolor attribute on the body element.

The linkColor attribute on the Document object must reflect the link attribute on the body element.

The vLinkColor attribute on the Document object must reflect the vlink attribute on the body element.

The aLinkColor attribute on the Document object must reflect the alink attribute on the body element.

[XXX] interface HTMLBodyElement {
           attribute DOMString text;
           attribute DOMString bgColor;
           attribute DOMString background;
           attribute DOMString link;
           attribute DOMString vLink;
           attribute DOMString aLink;
};

The text DOM attribute of the body element must reflect the element's text content attribute.

The bgColor DOM attribute of the body element must reflect the element's bgcolor content attribute.

The background DOM attribute of the body element must reflect the element's background content attribute.

The link DOM attribute of the body element must reflect the element's link content attribute.

The aLink DOM attribute of the body element must reflect the element's alink content attribute.

The vLink DOM attribute of the body element must reflect the element's vlink content attribute.

10.3.2 The applet element

The applet element is a Java-specific variant of the embed element. In HTML5 the applet element is obsoleted so that all extension frameworks (Java, .NET, Flash, etc) are handled in a consistent manner.

If the sandboxed plugins browsing context flag is set on the browsing context for which the applet element's document is the active document, then the element must be ignored (it represents nothing).

Otherwise, define how the element works, if supported.

[XXX] interface HTMLDocument {
  readonly attribute HTMLCollection applets;
};

The applets attribute must return an HTMLCollection rooted at the Document node, whose filter matches only applet elements.