HTML Standard Tracker

Filter

File a bug

SVNBugCommentTime (UTC)
2760Filling in the rendering section: Fill in more sections -- br, tool bars, ruby...2009-02-05 09:50
@@ -13221,21 +13221,21 @@ first matching case):</p>
   <p>The <code title="attr-hyperlink-target">target</code>, <code
   title="attr-hyperlink-ping">ping</code>, <code
   title="attr-hyperlink-rel">rel</code>, <code
   title="attr-hyperlink-media">media</code>, <code
   title="attr-hyperlink-hreflang">hreflang</code>, and <code
   title="attr-hyperlink-type">type</code> attributes must be omitted
   if the <code title="attr-hyperlink-href">href</code> attribute is
   not present.</p>
 
   <div class="example">
-   <p>If a site uses a consistent navigation toolbar on every page,
+   <p>If a site uses a consistent navigation tool bar on every page,
    then the link that would normally link to the page itself could be
    marked up using an <code>a</code> element:</p>
    <pre>&lt;nav>
  &lt;ul>
   &lt;li> &lt;a href="/">Home&lt;/a> &lt;/li>
   &lt;li> &lt;a href="/news">News&lt;/a> &lt;/li>
   &lt;li> &lt;a>Examples&lt;/a> &lt;/li>
   &lt;li> &lt;a href="/legal">Legal&lt;/a> &lt;/li>
  &lt;/ul>
 &lt;/nav></pre>
@@ -34534,36 +34534,20 @@ interface <dfn>HTMLOptionElement</dfn> : <span>HTMLElement</span> {
   title="attr-details-open">open</code> attribute on the element to
   the value <code title="">open</code>. To honour a request for the
   details to be hidden, the user agent must remove the <code
   title="attr-details-open">open</code> attribute from the
   element.</p>
 
   <p>The <dfn title="dom-details-open"><code>open</code></dfn>
   attribute must <span>reflect</span> the <code
   title="attr-details-open">open</code> content attribute.</p>
 
-  <p class="XXX">Rendering will be described in the Rendering
-  section in due course. Basically CSS :open and :closed match the
-  element, it's a block-level element by default, and when it matches
-  :closed it renders as if it had an XBL binding attached to it whose
-  template was just <code>&lt;template>&#x25B6;&lt;content
-  includes="legend:first-child"&gt;Details&lt;/content>&lt;/template></code>,
-  and when it's :open it acts as if it had an XBL binding attached to
-  it whose template was just <code>&lt;template>&#x25BC;&lt;content
-  includes="legend:first-child"&gt;Details&lt;/content>&lt;content/>&lt;/template></code>
-  or some such.</p>
-
-<!--
-Example ideas:
-http://mail.gnome.org/archives/usability/2006-June/msg00015.html
--->
-
 
 
 <div class="bad">
   <h4 id="datagrid">The <dfn><code>datagrid</code></dfn> element</h4>
 
 <p class="XXX">The API here needs rewriting. Don't implement this right now.</p>
 
   <dl class="element">
    <dt>Categories</dt>
    <dd><span>Flow content</span>.</dd>
@@ -37285,35 +37269,32 @@ explain that only direct children of the <menu> matter
   default context menus. For example, the user agent could handle
   right-clicks that have the Shift key depressed in such a way that it
   does not fire the <code title="event-contextmenu">contextmenu</code>
   event and instead always shows the default context menu.</p>
 
   <p>The <dfn title="dom-contextMenu"><code>contextMenu</code></dfn>
   attribute must <span>reflect</span> the <code
   title="attr-contextmenu">contextmenu</code> content attribute.</p>
 
 
-  <h5>Toolbars</h5>
-
-  <p><dfn>Toolbars</dfn> are a kind of menu that is always visible.</p>
+  <h5><dfn>Tool bars</dfn></h5>
 
   <p>When a <code>menu</code> element has a <code
-  title="attr-menu-type">type</code> attribute with the value <code
-  title="">toolbar</code>, then the user agent must <span
-  title="building menus and tool bars">build</span> the menu for that
-  <code>menu</code> element and <span
-  title="render-toolbar">render</span><!-- XXX xref --> it in the
-  document in a position appropriate for that <code>menu</code>
-  element.</p>
+  title="attr-menu-type">type</code> attribute in the <span
+  title="tool bar state">tool bar</span> state, then the user agent
+  must <span title="building menus and tool bars">build</span> the
+  menu for that <code>menu</code> element, and use the result in the
+  rendering.</p>
 
   <p>The user agent must reflect changes made to the
-  <code>menu</code>'s DOM immediately in the UI.</p>
+  <code>menu</code>'s DOM, by immediately <span title="building menus
+  and tool bars">rebuilding</span> the menu.</p>
 
 
 
   <h4 id="commands">Commands</h4>
 
   <p>A <dfn title="concept-command">command</dfn> is the abstraction
   behind menu items, buttons, and links. Once a command is defined,
   other parts of the interface can refer to the same command, allowing
   many access points to a single feature to share aspects such as the
   disabled state.</p>
@@ -61307,33 +61288,37 @@ style, title { display: none; }</pre>
 
 
 
   <h4>Display types</h4>
 
   <pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
 
 address, article, aside, blockquote, body, center, dd, dialog, dir,
 div, dl, dt, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hr,
 html, layer, legend, listing, menu, multicol, nav, ol, p, plaintext,
-pre, section, ul, xmp { display: block; }
+pre, rp, section, ul, xmp { display: block; }
 
 table { display: table; }
 caption { display: table-caption; }
 colgroup { display: table-column-group; }
 col { display: table-column; }
 thead { display: table-header-group; }
 tbody { display: table-row-group; }
 tfoot { display: table-footer-group; }
 tr { display: table-row; }
 td, th { display: table-cell; }
 
-li { display: list-item; }</pre>
+li { display: list-item; }
+
+ruby { display: ruby; }
+rt { display: ruby-text; }
+</pre>
 
   <!-- del, ins, and map are inline. -->
 
   <p>For the purposes of the CSS table model, the <code>col</code>
   element is to be treated as if it was present as many times as its
   <code title="attr-col-span">span</code> attribute <span title="rules
   for parsing non-negative integers">specifies</span>.</p>
 
   <p>For the purposes of the CSS table model, the
   <code>colgroup</code> element, if it contains no <code>col</code>
@@ -61343,20 +61328,29 @@ li { display: list-item; }</pre>
   integers">specifies</span>.</p>
 
   <p>For the purposes of the CSS table model, the <code
   title="attr-tdth-colspan">colspan</code> and <code
   title="attr-tdth-rowspan">rowspan</code> attributes on
   <code>td</code> and <code>th</code> elements are expected to <span
   title="rules for parsing non-negative integers">provide</span> the
   <i>special knowledge</i> regarding cells spanning rows and
   columns.</p>
 
+  <p>For the purposes of the CSS ruby model, runs of descendants of
+  <code>ruby</code> elements that are not <code>rt</code> or
+  <code>rp</code> elements are expected to be wrapped in anonymous
+  boxes whose 'display' property has the value 'ruby-base'.</p>
+
+  <p>User agents that do not support correct ruby rendering are
+  expected to render parentheses around the text of <code>rt</code>
+  elements in the absence of <code>rp</code> elements.</p>
+
 
   <h4>Margins and padding</h4>
 
   <pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
 
 blockquote, dir, dl, listing, menu, ol, p, plaintext, pre, ul, xmp {
   margin-top: 1em; margin-bottom: 1em;
 }
 dir dir, dir dl, dir menu, dir ol, dir ul,
 dl dir, dl dl, dl menu, dl ol, dl ul,
@@ -62062,20 +62056,24 @@ bdo[dir=ltr], bdo[dir=rtl] { unicode-bidi: bidi-override; }</pre>
   <hr>
 
   <p>The following rules are also expected to apply, as
   <span>presentational hints</span>:</p>
 
   <pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
 
 td[nowrap], th[nowrap] { white-space: nowrap; }
 pre[wrap] { white-space: pre-wrap; }
 
+br[clear=left] { clear: left; }
+br[clear=right] { clear: right; }
+br[clear=all], br[clear=both] { clear: both; }
+
 ol[type=1], li[type=1] { list-style-type: decimal; }
 ol[type=a], li[type=a] { list-style-type: lower-alpha; }
 ol[type=A], li[type=A] { list-style-type: upper-alpha; }
 ol[type=i], li[type=i] { list-style-type: lower-roman; }
 ol[type=I], li[type=I] { list-style-type: upper-roman; }
 ul[type=disc], li[type=disc] { list-style-type: disc; }
 ul[type=circle], li[type=circle] { list-style-type: circle; }
 ul[type=square], li[type=square] { list-style-type: square; }
 
 table[rules=none], table[rules=groups], table[rules=rows],
@@ -62169,20 +62167,24 @@ table[rules=all] > tr > td, table[rules=all] > tr > th,
 table[rules=all] > thead > tr > td, table[rules=all] > thead > tr > th,
 table[rules=all] > tbody > tr > td, table[rules=all] > tbody > tr > th,
 table[rules=all] > tfoot > tr > td, table[rules=all] > tfoot > tr > th {
   border-style: solid;
 }</pre>
 
   <p>When rendering <code>li</code> elements, user agents are expected
   to use the ordinal value of the <code>li</code> element to render
   the counter in the list item marker.</p>
 
+  <p>The <code>br</code> element is expected to render as if its
+  contents were a single U+000A LINE FEED (LF) character and its
+  'white-space' property was 'pre'.</p>
+
   <p>The <code>table</code> element's <code
   title="attr-table-border">border</code> attribute <span title="maps
   to the pixel length property">maps to the pixel length
   properties</span> 'border-top-width', 'border-right-width',
   'border-bottom-width', 'border-left-width' on the element. If the
   attribute is present but its value cannot be parsed successfully, a
   default value of 1px is expected to be used for that property
   instead.</p>
 
 
@@ -62749,81 +62751,86 @@ img[align=right] { margin-left: 3px; }</pre>
   opposed to user agents that can lay frames out with subpixel
   accuracy) are expected to distribute the remainder first the last
   entry whose unit is <i>relative</i>, then equally (not
   proportionally) to each entry whose unit is <i>percentage</i>, then
   equally (not proportionally) to each entry whose unit is
   <i>absolute</i>, and finally, failing all else, to the last
   entry.</p>
 
 
 
-  <h4>Ruby annotations</h4>
-
-  <p class="XXX">...</p>
-
-  <!-- XXX ruby, rt, rp 
-  > * note on rt rendering
-  > 
-  > Since there are a number of documents with ruby but without rp, when you
-  > write the rendering section, please include an advice for user agents
-  > that do not support "correct" ruby rendering to render something like
-  > "(" and ")" before and after ruby text (using, e.g., CSS ::before and
-  > ::after) even when there are no rp elements. Otherwise, reading Web
-  > pages without rp is very annoying.
-  -->
-
-
+  <h4>Tool bars</h4>
 
-  <h4>Toolbars</h4>
+  <p>When a <code>menu</code> element's <code
+  title="attr-menu-type">type</code> attribute is in the <span
+  title="tool bar state">tool bar</span> state, the element is
+  expected to be treated as a replaced element with a height about two
+  lines high and a width derived from the contents of the element.</p>
 
-  <h5>The 'icon' property</h5>
+  <p>The element is expected to have, by default, the appearance of a
+  tool bar on the user agent's platform. It is expected to contain the
+  menu that is <span title="building menus and tool bars">built</span>
+  from the element.</p>
 
-  <p>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 <code title="command-attribute">command</code> attribute,
-  but when the property computes to an actual image, it should use
-  that image instead.</p>
+  <p class="example XXX">...example with screenshot...</p>
 
 
 
   <h4>The <code>bb</code> element</h4>
 
-  <p class="XXX">...</p>
-
-
-
-  <h4>The <code>br</code> element</h4>
-
-  <p class="XXX">...</p>
-  <!-- clear="left|right|all|both" -->
+  <p>When the <code>bb</code> element <span>represents</span> a
+  browser button, it is expected to render as a replaced element
+  consisting of a regular one-line-high button, with a width based on
+  the text in the button, which is itself based on its <code
+  title="attr-bb-type">type</code> attribute in a user-agent-defined
+  (and probably locale-specific) fashion. When it does not, it is
+  expected to render as per the regular CSS rules.</p>
 
 
 
   <h4>The <code>button</code> element</h4>
 
-  <p class="XXX">...</p>
+  <p>The <code>button</code> element is expected to render as a
+  replaced element whose contents are styled as per the regular CSS
+  rules. Its intrinisic dimensions are the shrink-wrap dimensions of
+  its contents.</p>
 
 
 
   <h4>The <code>datagrid</code> element</h4>
 
-  <p class="XXX">This section will probably include details on
-  how to render DATAGRID (including <span id="datagridPseudos">its
+  <p class="XXX">This section will probably include details on how to
+  render DATAGRID (including <span id="datagridPseudos">its
   pseudo-elements</span>), drag-and-drop, etc, in a visual medium, in
-  concert with CSS.</p>
+  concert with CSS. Implementation experience is desired before this
+  section is filled in.</p>
 
 
 
   <h4>The <code>details</code> element</h4>
 
-  <p class="XXX">...</p>
+  <p class="XXX">The <code>details</code> element, ...</p>
+
+  <p class="XXX">Basically CSS :open and :closed match the
+  element, it's a block-level element by default, and when it matches
+  :closed it renders as if it had an XBL binding attached to it whose
+  template was just <code>&lt;template>&#x25B6;&lt;content
+  includes="legend:first-child"&gt;Details&lt;/content>&lt;/template></code>,
+  and when it's :open it acts as if it had an XBL binding attached to
+  it whose template was just <code>&lt;template>&#x25BC;&lt;content
+  includes="legend:first-child"&gt;Details&lt;/content>&lt;content/>&lt;/template></code>
+  or some such.</p>
+
+<!--
+Example ideas:
+http://mail.gnome.org/archives/usability/2006-June/msg00015.html
+-->
 
 
 
   <h4>The <code>fieldset</code> element</h4>
 
   <p class="XXX">...</p>
   <!-- XXX <legend align="left|right|center|bottom|top"> -->
 
 
 

|