HTML Standard Tracker

Filter

File a bug

SVNBugCommentTime (UTC)
2753Filling in the rendering section: list styles; table borders; align=justify.2009-02-04 12:49
@@ -61316,25 +61316,20 @@ td, th { padding: 1px; }</pre>
   title="attr-tr-height">height</code> attribute <span>maps to the
   dimension property</span> 'height' on the <code>tr</code>
   element.</p>
 
   <p>The <code>td</code> and <code>th</code> elements' <code
   title="attr-tdth-height">height</code> attributes <span title="maps
   to the dimension property">map to the dimension property</span> 'height'
   on the element.</p>
 
   <p>The <code>td</code> and <code>th</code> elements' <code
-  title="attr-tdth-height">height</code> attributes <span title="maps
-  to the dimension property">map to the dimension property</span> 'height'
-  on the element.</p>
-
-  <p>The <code>td</code> and <code>th</code> elements' <code
   title="attr-tdth-width">width</code> attributes <span title="maps
   to the dimension property">map to the dimension property</span> 'width'
   on the element.</p>
 
   <hr>
 
   <p>In <span>quirks mode</span>, the following rules are also
   expected to apply:</p>
 
   <pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
@@ -61415,39 +61410,51 @@ tfoot[valign=baseline], tr[valign=baseline], td[valign=baseline], th[valign=base
   'center' in a <span title="presentational hints">presentational
   hint</span>, and to center blocks and tables within them, as if
   their descendants had their 'margin-left' and 'margin-right'
   properties set to 'auto' in <span>presentational hints</span>.</p>
 
   <p>The <code>div</code>, <code>caption</code>, <code>thead</code>,
   <code>tbody</code>, <code>tfoot</code>, <code>tr</code>,
   <code>td</code>, and <code>th</code> elements, when they have an
   <code title="attr-align">align</code> attribute whose value is an
   <span>ASCII case-insensitive</span> match for the string "<code
-  title="">left</code>" or "<code title="">justify</code>", are
-  expected to left-align text within themselves, as if they had their
-  'text-align' property set to 'left' in a <span title="presentational
-  hints">presentational hint</span>, and to left-align blocks and
-  tables within them, as if their descendants had their 'margin-right'
-  property set to 'auto' in <span>presentational hints</span>.</p>
+  title="">left</code>", are expected to left-align text within
+  themselves, as if they had their 'text-align' property set to 'left'
+  in a <span title="presentational hints">presentational hint</span>,
+  and to left-align blocks and tables within them, as if their
+  descendants had their 'margin-right' property set to 'auto' in
+  <span>presentational hints</span>.</p>
 
   <p>The <code>div</code>, <code>caption</code>, <code>thead</code>,
   <code>tbody</code>, <code>tfoot</code>, <code>tr</code>,
   <code>td</code>, and <code>th</code> elements, when they have an
   <code title="attr-align">align</code> attribute whose value is an
   <span>ASCII case-insensitive</span> match for the string "<code
   title="">right</code>", are expected to right-align text within
   themselves, as if they had their 'text-align' property set to
   'right' in a <span title="presentational hints">presentational
   hint</span>, and to right-align blocks and tables within them, as if
   their descendants had their 'margin-left' property set to 'auto' in
   <span>presentational hints</span>.</p>
 
+  <p>The <code>div</code>, <code>caption</code>, <code>thead</code>,
+  <code>tbody</code>, <code>tfoot</code>, <code>tr</code>,
+  <code>td</code>, and <code>th</code> elements, when they have an
+  <code title="attr-align">align</code> attribute whose value is an
+  <span>ASCII case-insensitive</span> match for the string "<code
+  title="">justify</code>", are expected to full-justify text within
+  themselves, as if they had their 'text-align' property set to
+  'justify' in a <span title="presentational hints">presentational
+  hint</span>, and to left-align blocks and tables within them, as if
+  their descendants had their 'margin-right' property set to 'auto' in
+  <span>presentational hints</span>.</p>
+
   <p>In all these cases, the effect on descendants is expected to only
   extend to descendants that do not themselves have an applicable
   <code title="attr-align">align</code> attribute.</p>
 
 
   <h4>Fonts and colors</h4>
 
   <pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
 
 address, cite, dfn, em, i, var { font-style: italic; }
@@ -61460,22 +61467,88 @@ h4 { font-size: 1.00em; font-weight: bold; }
 h5 { font-size: 0.83em; font-weight: bold; }
 h6 { font-size: 0.67em; font-weight: bold; }
 big { font-size: larger; }
 small, sub, sup { font-size: smaller; }
 sub, sup { line-height: normal; }
 
 :link { color: blue; }
 :visited { color: purple; }
 body { color: black; background: white; }
 mark { background: yellow; color: black; }
-table { border-color: gray; }
-thead, tbody, tfoot, tr { border-color: inherit; }</pre>
+
+table, td, th { border-color: gray; }
+thead, tbody, tfoot, tr { border-color: inherit; }
+table[rules=none], table[rules=groups], table[rules=rows],
+table[rules=cols], table[rules=all], table[frames=void],
+table[frames=above], table[frames=below], table[frames=hsides],
+table[frames=lhs], table[frames=rhs], table[frames=vsides],
+table[frames=box], table[frames=border],
+table[rules=none] > tr > td, table[rules=none] > tr > th,
+table[rules=groups] > tr > td, table[rules=groups] > tr > th,
+table[rules=rows] > tr > td, table[rules=rows] > tr > th,
+table[rules=cols] > tr > td, table[rules=cols] > tr > th,
+table[rules=all] > tr > td, table[rules=all] > 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] td, table[frames=below] > tr > th,
+table[frames=hsides] > tr > td, table[frames=hsides] > tr > th,
+table[frames=lhs] > tr > td, table[frames=lhs] > tr > th,
+table[frames=rhs] > tr > td, table[frames=rhs] > tr > th,
+table[frames=vsides] > tr > td, table[frames=vsides] > tr > th,
+table[frames=box] > tr > td, table[frames=box] > tr > th,
+table[frames=border] > tr > td, table[frames=border] > tr > th,
+table[rules=none] > thead > tr > td, table[rules=none] > thead > tr > th,
+table[rules=groups] > thead > tr > td, table[rules=groups] > thead > tr > th,
+table[rules=rows] > thead > tr > td, table[rules=rows] > thead > tr > th,
+table[rules=cols] > thead > tr > td, table[rules=cols] > thead > tr > th,
+table[rules=all] > thead > tr > td, table[rules=all] > thead > tr > th,
+table[frames=void] > thead > tr > td, table[frames=void] > thead > tr > th,
+table[frames=above] > thead > tr > td, table[frames=above] > thead > tr > th,
+table[frames=below] td, table[frames=below] > thead > tr > th,
+table[frames=hsides] > thead > tr > td, table[frames=hsides] > thead > tr > th,
+table[frames=lhs] > thead > tr > td, table[frames=lhs] > thead > tr > th,
+table[frames=rhs] > thead > tr > td, table[frames=rhs] > thead > tr > th,
+table[frames=vsides] > thead > tr > td, table[frames=vsides] > thead > tr > th,
+table[frames=box] > thead > tr > td, table[frames=box] > thead > tr > th,
+table[frames=border] > thead > tr > td, table[frames=border] > thead > tr > th,
+table[rules=none] > tbody > tr > td, table[rules=none] > tbody > tr > th,
+table[rules=groups] > tbody > tr > td, table[rules=groups] > tbody > tr > th,
+table[rules=rows] > tbody > tr > td, table[rules=rows] > tbody > tr > th,
+table[rules=cols] > tbody > tr > td, table[rules=cols] > tbody > tr > th,
+table[rules=all] > tbody > tr > td, table[rules=all] > tbody > tr > th,
+table[frames=void] > tbody > tr > td, table[frames=void] > tbody > tr > th,
+table[frames=above] > tbody > tr > td, table[frames=above] > tbody > tr > th,
+table[frames=below] td, table[frames=below] > tbody > tr > th,
+table[frames=hsides] > tbody > tr > td, table[frames=hsides] > tbody > tr > th,
+table[frames=lhs] > tbody > tr > td, table[frames=lhs] > tbody > tr > th,
+table[frames=rhs] > tbody > tr > td, table[frames=rhs] > tbody > tr > th,
+table[frames=vsides] > tbody > tr > td, table[frames=vsides] > tbody > tr > th,
+table[frames=box] > tbody > tr > td, table[frames=box] > tbody > tr > th,
+table[frames=border] > tbody > tr > td, table[frames=border] > tbody > tr > th,
+table[rules=none] > tfoot > tr > td, table[rules=none] > tfoot > tr > th,
+table[rules=groups] > tfoot > tr > td, table[rules=groups] > tfoot > tr > th,
+table[rules=rows] > tfoot > tr > td, table[rules=rows] > tfoot > tr > th,
+table[rules=cols] > tfoot > tr > td, table[rules=cols] > tfoot > tr > th,
+table[rules=all] > tfoot > tr > td, table[rules=all] > tfoot > tr > th,
+table[frames=void] > tfoot > tr > td, table[frames=void] > tfoot > tr > th,
+table[frames=above] > tfoot > tr > td, table[frames=above] > tfoot > tr > th,
+table[frames=below] td, table[frames=below] > tfoot > tr > th,
+table[frames=hsides] > tfoot > tr > td, table[frames=hsides] > tfoot > tr > th,
+table[frames=lhs] > tfoot > tr > td, table[frames=lhs] > tfoot > tr > th,
+table[frames=rhs] > tfoot > tr > td, table[frames=rhs] > tfoot > tr > th,
+table[frames=vsides] > tfoot > tr > td, table[frames=vsides] > tfoot > tr > th,
+table[frames=box] > tfoot > tr > td, table[frames=box] > tfoot > tr > th,
+table[frames=border] > tfoot > tr > td, table[frames=border] > tfoot > tr > th {
+  border-color: black;
+}
+
+</pre>
 
   <hr>
 
   <p>The <code>article</code>, <code>aside</code>, <code>nav</code>,
   and <code>section</code> elements are expected to affect the styling
   of <code>h1</code> elements, based on the nesting depth. If <var
   title="">x</var> is a selector that matches elements that are either
   <code>article</code>, <code>aside</code>, <code>nav</code>, or
   <code>section</code> elements, then the following rules capture what
   is expected:</p>
@@ -61718,23 +61791,22 @@ thead, tbody, tfoot, tr { border-color: inherit; }</pre>
   <pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
 
 :link, :visited, ins, u { text-decoration: underline; }
 abbr[title], acronym[title] { text-decoration: dotted underline; }<!-- XXX CSS3 http://dev.w3.org/csswg/css3-text/#text-decoration-style -->
 del, s, strike { text-decoration: line-through; }
 blink { text-decoration: blink; }
 
 q:before { content: open-quote; }
 q:after { content: close-quote; }
 
-nobr, td[nowrap], th[nowrap] { white-space: nowrap; }
+nobr { white-space: nowrap; }
 listing, plaintext, pre, xmp { white-space: pre; }
-pre[wrap] { white-space: pre-wrap; }
 
 ol { list-style-type: decimal; }
 
 dir, menu, ul {
   list-style-type: disc;
 }
 
 dir dl, dir menu, dir ul,
 menu dl, menu menu, menu ul,
 ol dl, ol menu, ol ul,
@@ -61755,35 +61827,156 @@ ol menu dl, ol menu menu, ol menu ul,
 ol ol dl, ol ol menu, ol ol ul, 
 ol ul dl, ol ul menu, ol ul ul, 
 ul dir dl, ul dir menu, ul dir ul, 
 ul menu dl, ul menu menu, ul menu ul, 
 ul ol dl, ul ol menu, ul ol ul, 
 ul ul dl, ul ul menu, ul ul ul {
   list-style-type: square;
 }
 
 iframe { border: 2px inset; }
+table { border-style: outset; }
+td, th { border-style: inset; }
 
 [dir=rtl] { direction: rtl; unicode-bidi: embed; }
 [dir=ltr] { direction: lrt; unicode-bidi: embed; }
 bdo[dir] { unicode-bidi: bidi-override; }</pre>
 
   <p>In addition, rules setting the 'quotes' property appropriately
   for the locales and languages understood by the user are expected to
   be present.</p>
 
-  <!-- XXX <ol>/<ul> type (1|a|A|i|I|disc|circle/round|square), start (n); <li> type (A|a|I|i|1|disc|circle/round|square), value (n) -->
-
   <hr>
 
-  <p class="XXX">...tables...</p>
-  <!-- table: rules/layout/frames; <table border> (border => border=1);  -->
+  <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; }
+
+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],
+table[rules=cols], table[rules=all] {
+  border-style: none;
+  border-collapse: collapse;
+}
+
+table[frames=void] { border-style: hidden hidden hidden hidden; }
+table[frames=above] { border-style: solid hidden hidden hidden; }
+table[frames=below] { border-style: hidden hidden solid hidden; }
+table[frames=hsides] { border-style: solid hidden solid hidden; }
+table[frames=lhs] { border-style: hidden hidden hidden solid; }
+table[frames=rhs] { border-style: hidden solid hidden hidden; }
+table[frames=vsides] { border-style: hidden solid hidden solid; }
+table[frames=box],
+table[frames=border] { border-style: solid solid solid solid; }
+
+table[frames=void] > tr > td, table[frames=void] > tr > th,
+table[frames=above] > tr > td, table[frames=above] > tr > th,
+table[frames=below] td, table[frames=below] > tr > th,
+table[frames=hsides] > tr > td, table[frames=hsides] > tr > th,
+table[frames=lhs] > tr > td, table[frames=lhs] > tr > th,
+table[frames=rhs] > tr > td, table[frames=rhs] > tr > th,
+table[frames=vsides] > tr > td, table[frames=vsides] > tr > th,
+table[frames=box] > tr > td, table[frames=box] > tr > th,
+table[frames=border] > tr > td, table[frames=border] > tr > th,
+table[frames=void] > thead > tr > td, table[frames=void] > thead > tr > th,
+table[frames=above] > thead > tr > td, table[frames=above] > thead > tr > th,
+table[frames=below] td, table[frames=below] > thead > tr > th,
+table[frames=hsides] > thead > tr > td, table[frames=hsides] > thead > tr > th,
+table[frames=lhs] > thead > tr > td, table[frames=lhs] > thead > tr > th,
+table[frames=rhs] > thead > tr > td, table[frames=rhs] > thead > tr > th,
+table[frames=vsides] > thead > tr > td, table[frames=vsides] > thead > tr > th,
+table[frames=box] > thead > tr > td, table[frames=box] > thead > tr > th,
+table[frames=border] > thead > tr > td, table[frames=border] > thead > tr > th,
+table[frames=void] > tbody > tr > td, table[frames=void] > tbody > tr > th,
+table[frames=above] > tbody > tr > td, table[frames=above] > tbody > tr > th,
+table[frames=below] td, table[frames=below] > tbody > tr > th,
+table[frames=hsides] > tbody > tr > td, table[frames=hsides] > tbody > tr > th,
+table[frames=lhs] > tbody > tr > td, table[frames=lhs] > tbody > tr > th,
+table[frames=rhs] > tbody > tr > td, table[frames=rhs] > tbody > tr > th,
+table[frames=vsides] > tbody > tr > td, table[frames=vsides] > tbody > tr > th,
+table[frames=box] > tbody > tr > td, table[frames=box] > tbody > tr > th,
+table[frames=border] > tbody > tr > td, table[frames=border] > tbody > tr > th,
+table[frames=void] > tfoot > tr > td, table[frames=void] > tfoot > tr > th,
+table[frames=above] > tfoot > tr > td, table[frames=above] > tfoot > tr > th,
+table[frames=below] td, table[frames=below] > tfoot > tr > th,
+table[frames=hsides] > tfoot > tr > td, table[frames=hsides] > tfoot > tr > th,
+table[frames=lhs] > tfoot > tr > td, table[frames=lhs] > tfoot > tr > th,
+table[frames=rhs] > tfoot > tr > td, table[frames=rhs] > tfoot > tr > th,
+table[frames=vsides] > tfoot > tr > td, table[frames=vsides] > tfoot > tr > th,
+table[frames=box] > tfoot > tr > td, table[frames=box] > tfoot > tr > th,
+table[frames=border] > tfoot > tr > td, table[frames=border] > tfoot > tr > th {
+  border-style: solid;
+}
+
+table[rules=none] > tr > td, table[rules=none] > tr > th,
+table[rules=none] > thead > tr > td, table[rules=none] > thead > tr > th,
+table[rules=none] > tbody > tr > td, table[rules=none] > tbody > tr > th,
+table[rules=none] > tfoot > tr > td, table[rules=none] > tfoot > tr > th,
+table[rules=groups] > tr > td, table[rules=groups] > tr > th,
+table[rules=groups] > thead > tr > td, table[rules=groups] > thead > tr > th,
+table[rules=groups] > tbody > tr > td, table[rules=groups] > tbody > tr > th,
+table[rules=groups] > tfoot > tr > td, table[rules=groups] > tfoot > tr > th,
+table[rules=rows] > tr > td, table[rules=rows] > tr > th,
+table[rules=rows] > thead > tr > td, table[rules=rows] > thead > tr > th,
+table[rules=rows] > tbody > tr > td, table[rules=rows] > tbody > tr > th,
+table[rules=rows] > tfoot > tr > td, table[rules=rows] > tfoot > tr > th {
+  border-style: none;
+}
+
+table[rules=groups] > colgroup, table[rules=groups] > thead,
+table[rules=groups] > tbody, table[rules=groups] > tfoot {
+  border-style: solid;
+}
+
+table[rules=rows] > tr, table[rules=rows] > thead > tr,
+table[rules=rows] > tbody > tr, table[rules=rows] > tfoot > tr {
+  border-style: solid;
+}
+
+table[rules=cols] > tr > td, table[rules=cols] > tr > th,
+table[rules=cols] > thead > tr > td, table[rules=cols] > thead > tr > th,
+table[rules=cols] > tbody > tr > td, table[rules=cols] > tbody > tr > th,
+table[rules=cols] > tfoot > tr > td, table[rules=cols] > tfoot > tr > th {
+  border-style: none solid none solid;
+}
+
+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>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>
 
 
   <h4>Resetting rules for inherited properties</h4>
 
   <p>The following rules are also expected to be in play, resetting
   certain properties to block inheritance by default.</p>
 
   <pre class="css">@namespace url(http://www.w3.org/1999/xhtml);
 table { text-indent: initial; }</pre>
 

|