Short URL: http://html5.org/r/2763
| SVN | Bug | Comment | Time (UTC) |
|---|---|---|---|
| 2763 | Filling in the rendering section: <hr>, and a rearranging of the sections with minor tweaks. Again. | 2009-02-06 01:43 |
Index: source
===================================================================
--- source (revision 2762)
+++ source (revision 2763)
@@ -61220,25 +61220,8 @@
this section to their target media.</p>
- <h3>Hidden elements</h3>
+ <h3>The CSS user agent style sheet and presentational hints</h3>
- <p>User agents are expected to use the following styles in all
- media.</p>
-
- <pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
-
-[hidden], area, audio:not([controls]), base, basefont, command,
-datalist, eventsource, head, input[type=hidden], link,
-menu[type=context], meta, noembed, noframes, param, script, source,
-style, title { display: none; }</pre>
-
- <p>This hides all the elements that do not represent anything
- visible.</p>
-
-
-
- <h3>Simple defaults</h3>
-
<h4>Introduction</h4>
<p>The CSS rules given in these subsections are, unless otherwise
@@ -61292,6 +61275,11 @@
<pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
+[hidden], area, audio:not([controls]), base, basefont, command,
+datalist, eventsource, head, input[type=hidden], link,
+menu[type=context], meta, noembed, noframes, param, script, source,
+style, title { display: none; }
+
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,
@@ -61344,7 +61332,11 @@
expected to render parentheses around the text of <code>rt</code>
elements in the absence of <code>rp</code> elements.</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>
+
<h4>Margins and padding</h4>
<pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
@@ -62095,7 +62087,7 @@
table[frames=box],
table[frames=border] { border-style: solid solid solid solid; }
-`table[frames=void] > tr > td, table[frames=void] > tr > th,
+table[frames=void] > tr > td, table[frames=void] > tr > th,
table[frames=above] > tr > td, table[frames=above] > tr > th,
table[frames=below] > > tr > td, table[frames=below] > tr > th,
table[frames=hsides] > tr > td, table[frames=hsides] > tr > th,
@@ -62177,10 +62169,6 @@
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
@@ -62216,7 +62204,67 @@
}</pre>
+ <h4>The <code>hr</code> element</h4>
+ <pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
+
+hr { color: gray; border-style: inset; border-width: 1px; }</pre>
+
+ <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);
+
+hr[align=left] { margin-left: 0; margin-right: auto; }
+hr[align=right] { margin-left: auto; margin-right: 0; }
+hr[align=center] { margin-left: auto; margin-right: auto; }
+hr[color], hr[noshade] { border-style: solid; }</pre>
+
+ <p>If an <code>hr</code> element has either a <code
+ title="attr-hr-color">color</code> attribute or a <code
+ title="attr-hr-noshade">noshade</code> attribute, and furthermore
+ also has a <code title="attr-hr-size">size</code> attribute, and
+ parsing that attribute's value using the <span>rules for parsing
+ non-negative integers</span> doesn't generate an error, then the
+ user agent is expected to use the parsed value divided by two as a
+ pixel length for <span>presentational hints</span> for the properties
+ 'border-top-width', 'border-right-width', 'border-bottom-width', and
+ 'border-left-width' on the element.</p>
+
+ <p>Otherwise, if an <code>hr</code> element has neither a <code
+ title="attr-hr-color">color</code> attribute nor a <code
+ title="attr-hr-noshade">noshade</code> attribute, but does have a
+ <code title="attr-hr-size">size</code> attribute, and parsing that
+ attribute's value using the <span>rules for parsing non-negative
+ integers</span> doesn't generate an error, then: if the parsed value
+ is one, then the user agent is expected to use the attribute as a
+ <span title="presentational hints">presentational hint</span>
+ setting the element's 'border-bottom-width' to 0; otherwise, if the
+ parsed value is greater than one, then the user agent is expected to
+ use the parsed value minus two as a pixel length for
+ <span>presentational hints</span> for the 'height' property on the
+ element.</p>
+
+ <p>The <code title="attr-hr-width">width</code> attribute on an
+ <code>hr</code> element <span>maps to the dimension property</span>
+ 'width' on the element.</p>
+
+ <p>When an <code>hr</code> element has a <code
+ title="attr-hr-color">color</code> attribute, its value is expected
+ to be parsed using the <span>rules for parsing a legacy color
+ value</span>, and the user agent is expected to treat the attribute
+ as a <span title="presentational hints">presentational hint</span>
+ setting the element's 'color' property to the resulting color.</p>
+
+
+
+ <h4>The <code>fieldset</code> element</h4>
+
+ <p class="XXX">...</p>
+ <!-- XXX <legend align="left|right|center|bottom|top"> -->
+
+
+
<h3>Replaced elements</h3>
<h4>Embedded content</h4>
@@ -62455,8 +62503,8 @@
<p>The CSS snippets below set the 'binding' property to a
user-agent-defined value, represented below by keywords like <code
- title=""><i>bb</i></code>. The rules then described for these
- bindings are only expected to apply if the element's 'binding'
+ title=""><i title="">bb</i></code>. The rules then described for
+ these bindings are only expected to apply if the element's 'binding'
property has not been overriden (e.g. by the author) to have another
value.</p>
@@ -62471,25 +62519,25 @@
<h4>The <code>bb</code> element</h4>
<pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
-bb:empty { binding: <i>bb</i>; }</pre>
+bb:empty { binding: <i title="">bb</i>; }</pre>
- <p>When the <i>bb</i> binding applies to a <code>bb</code> element,
- the element is expected to render as an 'inline-block' box rendered
- as a button, about one line high, containing text derived from the
- element's <code title="attr-bb-type">type</code> attribute in a
- user-agent-defined (and probably locale-specific) fashion.</p>
+ <p>When the <i title="">bb</i> binding applies to a <code>bb</code>
+ element, the element is expected to render as an 'inline-block' box
+ rendered as a button, about one line high, containing text derived
+ from the element's <code title="attr-bb-type">type</code> attribute
+ in a user-agent-defined (and probably locale-specific) fashion.</p>
<h4>The <code>button</code> element</h4>
<pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
-button { binding: <i>button</i>; }</pre>
+button { binding: <i title="">button</i>; }</pre>
- <p>When the <i>button</i> binding applies to a <code>button</code>
- element, the element is expected to render as an 'inline-block' box
- rendered as a button whose contents are the contents of the
- element.</p>
+ <p>When the <i title="">button</i> binding applies to a
+ <code>button</code> element, the element is expected to render as an
+ 'inline-block' box rendered as a button whose contents are the
+ contents of the element.</p>
@@ -62505,12 +62553,13 @@
<h4>The <code>details</code> element</h4>
<pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
-details { binding: <i>details</i>; }</pre>
+details { binding: <i title="">details</i>; }</pre>
- <p>When the <i>details</i> binding applies to a <code>details</code>
- element, the element is expected to render as a 'block' box with its
- 'padding-left' property set to '40px'. The element's shadow tree is
- expected to take a child element that matches the selector <code
+ <p>When the <i title="">details</i> binding applies to a
+ <code>details</code> element, the element is expected to render as a
+ 'block' box with its 'padding-left' property set to '40px'. The
+ element's shadow tree is expected to take a child element that
+ matches the selector <code
title="">:bound-element > legend:first-child</code> and
place it in a first 'block' box container, and then take the
remaining child nodes and place them in a later 'block' box
@@ -62531,38 +62580,11 @@
<!--
XXX examples with screenshots
http://mail.gnome.org/archives/usability/2006-June/msg00015.html
-want to show at least one that uses a triangle:
-
- > No issues found
- Viruses: 0
- Trojans: 0
-
-...and one that uses a button widget instead of a triangle.
-->
- <h4>The <code>fieldset</code> element</h4>
- <p class="XXX">...</p>
- <!-- XXX <legend align="left|right|center|bottom|top"> -->
-
-
-
- <h4>The <code>hr</code> element</h4>
-
- <p class="XXX">...</p>
- <!-- align=left|right|center (as auto margins), width=(int=>width:px; %->width:%)
- color (color implies noshade); sets 'color' which then propagates to border-color; defaults to 'gray'
- size=int, noshade
- with noshade: border-width = size/2 (default size=2 => 1px per side); solid borders; rounded corners
- without no shade: inset borders
- without noshade, size>1: height = size-2; border-width=1px
- without noshade, size=1: height = 0; border-top-width=1px only
- -->
-
-
-
<h4>The <code>input</code> element as a text entry widget</h4>
<p class="XXX">When an <code>input</code> element's <code