Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
[e] (0) Some parser clarifications.
Fixing http://www.w3.org/Bugs/Public/show_bug.cgi?id=10063

git-svn-id: http://svn.whatwg.org/webapps@5161 340c8d12-0b0e-0410-8428-c7bf67bfef74
  • Loading branch information
Hixie committed Jul 14, 2010
1 parent ac1f39a commit bd8c9b1
Show file tree
Hide file tree
Showing 3 changed files with 51 additions and 36 deletions.
29 changes: 17 additions & 12 deletions complete.html
Expand Up @@ -80808,24 +80808,29 @@ <h5 id=foster-parenting><span class=secno>12.2.5.3 </span>Foster parenting</h5>
<p>The <dfn id=foster-parent-element>foster parent element</dfn> is the parent element of the
last <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
elements</a>, if there is a <code><a href=#the-table-element>table</a></code> element and it has
such a parent element. If there is no <code><a href=#the-table-element>table</a></code> element in
the <a href=#stack-of-open-elements>stack of open elements</a> (<a href=#fragment-case>fragment
case</a>), then the <i><a href=#foster-parent-element>foster parent element</a></i> is the first
element in the <a href=#stack-of-open-elements>stack of open elements</a> (the
<code><a href=#the-html-element-0>html</a></code> element). Otherwise, if there is a
<code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
such a parent element.</p>

<p class=note>It might have no parent or some other kind parent if
a script manipulated the DOM after the element was inserted by the
parser.</p>

<p>If there is no <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of
open elements</a> (<a href=#fragment-case>fragment case</a>), then the
<i><a href=#foster-parent-element>foster parent element</a></i> is the first element in the <a href=#stack-of-open-elements>stack
of open elements</a> (the <code><a href=#the-html-element-0>html</a></code> element). Otherwise,
if there is a <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
elements</a>, but the last <code><a href=#the-table-element>table</a></code> element in the
<a href=#stack-of-open-elements>stack of open elements</a> has no parent, or its parent
node is not an element, then the <i><a href=#foster-parent-element>foster parent element</a></i> is
the element before the last <code><a href=#the-table-element>table</a></code> element in the
node is not an element, then the <i><a href=#foster-parent-element>foster parent element</a></i> is the
element before the last <code><a href=#the-table-element>table</a></code> element in the
<a href=#stack-of-open-elements>stack of open elements</a>.</p>

<p>If the <i><a href=#foster-parent-element>foster parent element</a></i> is the parent element of the
last <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
elements</a>, then <var title="">node</var> must be inserted
immediately <em>before</em> the last <code><a href=#the-table-element>table</a></code> element in
the <a href=#stack-of-open-elements>stack of open elements</a> in the <i><a href=#foster-parent-element>foster parent
element</a></i>; otherwise, <var title="">node</var> must be
elements</a>, then <var title="">node</var> must be inserted into
the <i><a href=#foster-parent-element>foster parent element</a></i>, immediately <em>before</em> the
last <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
elements</a>; otherwise, <var title="">node</var> must be
<em>appended</em> to the <i><a href=#foster-parent-element>foster parent element</a></i>.</p>


Expand Down
29 changes: 17 additions & 12 deletions index
Expand Up @@ -74049,24 +74049,29 @@ document.body.appendChild(text);
<p>The <dfn id=foster-parent-element>foster parent element</dfn> is the parent element of the
last <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
elements</a>, if there is a <code><a href=#the-table-element>table</a></code> element and it has
such a parent element. If there is no <code><a href=#the-table-element>table</a></code> element in
the <a href=#stack-of-open-elements>stack of open elements</a> (<a href=#fragment-case>fragment
case</a>), then the <i><a href=#foster-parent-element>foster parent element</a></i> is the first
element in the <a href=#stack-of-open-elements>stack of open elements</a> (the
<code><a href=#the-html-element-0>html</a></code> element). Otherwise, if there is a
<code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
such a parent element.</p>

<p class=note>It might have no parent or some other kind parent if
a script manipulated the DOM after the element was inserted by the
parser.</p>

<p>If there is no <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of
open elements</a> (<a href=#fragment-case>fragment case</a>), then the
<i><a href=#foster-parent-element>foster parent element</a></i> is the first element in the <a href=#stack-of-open-elements>stack
of open elements</a> (the <code><a href=#the-html-element-0>html</a></code> element). Otherwise,
if there is a <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
elements</a>, but the last <code><a href=#the-table-element>table</a></code> element in the
<a href=#stack-of-open-elements>stack of open elements</a> has no parent, or its parent
node is not an element, then the <i><a href=#foster-parent-element>foster parent element</a></i> is
the element before the last <code><a href=#the-table-element>table</a></code> element in the
node is not an element, then the <i><a href=#foster-parent-element>foster parent element</a></i> is the
element before the last <code><a href=#the-table-element>table</a></code> element in the
<a href=#stack-of-open-elements>stack of open elements</a>.</p>

<p>If the <i><a href=#foster-parent-element>foster parent element</a></i> is the parent element of the
last <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
elements</a>, then <var title="">node</var> must be inserted
immediately <em>before</em> the last <code><a href=#the-table-element>table</a></code> element in
the <a href=#stack-of-open-elements>stack of open elements</a> in the <i><a href=#foster-parent-element>foster parent
element</a></i>; otherwise, <var title="">node</var> must be
elements</a>, then <var title="">node</var> must be inserted into
the <i><a href=#foster-parent-element>foster parent element</a></i>, immediately <em>before</em> the
last <code><a href=#the-table-element>table</a></code> element in the <a href=#stack-of-open-elements>stack of open
elements</a>; otherwise, <var title="">node</var> must be
<em>appended</em> to the <i><a href=#foster-parent-element>foster parent element</a></i>.</p>


Expand Down
29 changes: 17 additions & 12 deletions source
Expand Up @@ -92320,24 +92320,29 @@ document.body.appendChild(text);
<p>The <dfn>foster parent element</dfn> is the parent element of the
last <code>table</code> element in the <span>stack of open
elements</span>, if there is a <code>table</code> element and it has
such a parent element. If there is no <code>table</code> element in
the <span>stack of open elements</span> (<span>fragment
case</span>), then the <i>foster parent element</i> is the first
element in the <span>stack of open elements</span> (the
<code>html</code> element). Otherwise, if there is a
<code>table</code> element in the <span>stack of open
such a parent element.</p>

<p class="note">It might have no parent or some other kind parent if
a script manipulated the DOM after the element was inserted by the
parser.</p>

<p>If there is no <code>table</code> element in the <span>stack of
open elements</span> (<span>fragment case</span>), then the
<i>foster parent element</i> is the first element in the <span>stack
of open elements</span> (the <code>html</code> element). Otherwise,
if there is a <code>table</code> element in the <span>stack of open
elements</span>, but the last <code>table</code> element in the
<span>stack of open elements</span> has no parent, or its parent
node is not an element, then the <i>foster parent element</i> is
the element before the last <code>table</code> element in the
node is not an element, then the <i>foster parent element</i> is the
element before the last <code>table</code> element in the
<span>stack of open elements</span>.</p>

<p>If the <i>foster parent element</i> is the parent element of the
last <code>table</code> element in the <span>stack of open
elements</span>, then <var title="">node</var> must be inserted
immediately <em>before</em> the last <code>table</code> element in
the <span>stack of open elements</span> in the <i>foster parent
element</i>; otherwise, <var title="">node</var> must be
elements</span>, then <var title="">node</var> must be inserted into
the <i>foster parent element</i>, immediately <em>before</em> the
last <code>table</code> element in the <span>stack of open
elements</span>; otherwise, <var title="">node</var> must be
<em>appended</em> to the <i>foster parent element</i>.</p>


Expand Down

0 comments on commit bd8c9b1

Please sign in to comment.