- From: Ian Hickson via cvs-syncmail <cvsmail@w3.org>
- Date: Sat, 24 Jan 2009 01:52:30 +0000
- To: public-html-commits@w3.org
Update of /sources/public/html5/spec In directory hutz:/tmp/cvs-serv14538 Modified Files: Overview.html Log Message: Allow <frameset> to override the 'in body' mode in certain cases for compatibility with IE and pages that rely on IE's behaviour. (whatwg r2703) Index: Overview.html =================================================================== RCS file: /sources/public/html5/spec/Overview.html,v retrieving revision 1.1872 retrieving revision 1.1873 diff -u -d -r1.1872 -r1.1873 --- Overview.html 24 Jan 2009 00:32:43 -0000 1.1872 +++ Overview.html 24 Jan 2009 01:52:27 -0000 1.1873 @@ -863,7 +863,7 @@ <li><a href=#the-stack-of-open-elements><span class=secno>8.2.3.2 </span>The stack of open elements</a></li> <li><a href=#the-list-of-active-formatting-elements><span class=secno>8.2.3.3 </span>The list of active formatting elements</a></li> <li><a href=#the-element-pointers><span class=secno>8.2.3.4 </span>The element pointers</a></li> - <li><a href=#the-scripting-state><span class=secno>8.2.3.5 </span>The scripting state</a></ol></li> + <li><a href=#other-parsing-state-flags><span class=secno>8.2.3.5 </span>Other parsing state flags</a></ol></li> <li><a href=#tokenization><span class=secno>8.2.4 </span>Tokenization</a> <ol> <li><a href=#data-state><span class=secno>8.2.4.1 </span>Data state</a></li> @@ -38698,9 +38698,10 @@ points to the last <code><a href=#the-form-element>form</a></code> element that was opened and whose end tag has not yet been seen. It is used to make form controls associate with forms in the face of dramatically bad - markup, for historical reasons.<h5 id=the-scripting-state><span class=secno>8.2.3.5 </span>The scripting state</h5><p>The <dfn id=scripting-flag>scripting flag</dfn> is set to "enabled" if the <a href=#concept-n-script title=concept-n-script>scripting was enabled</a> for the + markup, for historical reasons.<h5 id=other-parsing-state-flags><span class=secno>8.2.3.5 </span>Other parsing state flags</h5><p>The <dfn id=scripting-flag>scripting flag</dfn> is set to "enabled" if the <a href=#concept-n-script title=concept-n-script>scripting was enabled</a> for the <code>Document</code> with which the parser is associated when the - parser was created, and "disabled" otherwise.<h4 id=tokenization><span class=secno>8.2.4 </span><dfn>Tokenization</dfn></h4><p>Implementations must act as if they used the following state + parser was created, and "disabled" otherwise.<p>The <dfn id=frameset-ok-flag>frameset-ok flag</dfn> is set to "ok" when the parser is + created. It is set to "not ok" after certain tokens are seen.<h4 id=tokenization><span class=secno>8.2.4 </span><dfn>Tokenization</dfn></h4><p>Implementations must act as if they used the following state machine to tokenise HTML. The state machine must start in the <a href=#data-state>data state</a>. Most states consume a single character, which may have various side-effects, and either switches the state @@ -40030,7 +40031,7 @@ 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 <em>appended</em> to the <i><a href=#foster-parent-element>foster parent element</a></i>.<h5 id=the-initial-insertion-mode><span class=secno>8.2.5.4 </span>The "<dfn title="insertion mode: initial">initial</dfn>" insertion mode</h5><p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-initial-insertion-mode title="insertion - mode: initial">initial</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of one of U+0009 CHARACTER + mode: initial">initial</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dd> @@ -40198,7 +40199,7 @@ data given in the comment token.</p> </dd> - <dt>A character token that is one of one of U+0009 CHARACTER + <dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dd> @@ -40255,7 +40256,7 @@ <code>Document</code> object, e.g. by scripts; nothing in particular happens in such cases, content continues being appended to the nodes as described in the next section.<h5 id=the-before-head-insertion-mode><span class=secno>8.2.5.6 </span>The "<dfn title="insertion mode: before head">before head</dfn>" insertion mode</h5><p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-before-head-insertion-mode title="insertion - mode: before head">before head</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of one of U+0009 CHARACTER + mode: before head">before head</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dd> @@ -40322,7 +40323,7 @@ </dd> </dl><h5 id=parsing-main-inhead><span class=secno>8.2.5.7 </span>The "<dfn title="insertion mode: in head">in head</dfn>" insertion mode</h5><p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inhead title="insertion - mode: in head">in head</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of one of U+0009 CHARACTER + mode: in head">in head</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dd> @@ -40506,7 +40507,7 @@ </dd> - <dt>A character token that is one of one of U+0009 CHARACTER + <dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dt>A comment token</dt> @@ -40539,7 +40540,7 @@ </dd> </dl><h5 id=the-after-head-insertion-mode><span class=secno>8.2.5.9 </span>The "<dfn title="insertion mode: after head">after head</dfn>" insertion mode</h5><p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-after-head-insertion-mode title="insertion - mode: after head">after head</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of one of U+0009 CHARACTER + mode: after head">after head</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dd> @@ -40628,6 +40629,11 @@ <p><a href=#insert-a-character title="insert a character">Insert the token's character</a> into the <a href=#current-node>current node</a>.</p> + <p>If the token is not one of U+0009 CHARACTER TABULATION, U+000A + LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN + (CR),--> or U+0020 SPACE, then set the <a href=#frameset-ok-flag>frameset-ok + flag</a> to "not ok".</p> + </dd> <dt>A comment token</dt> @@ -40676,6 +40682,35 @@ </dd> + <dt>A start tag whose tag name is "frameset"</dt> + <dd> + + <p><a href=#parse-error>Parse error</a>.</p> + + <p>If the second element on the <a href=#stack-of-open-elements>stack of open + elements</a> is not a <code><a href=#the-body-element>body</a></code> element, or, if the + <a href=#stack-of-open-elements>stack of open elements</a> has only one node on it, + then ignore the token. (<a href=#fragment-case>fragment case</a>)</p> + + <p>If the <a href=#frameset-ok-flag>frameset-ok flag</a> is set to "not ok", ignore + the token.</p> + + <p>Otherwise, run the following steps:</p> + + <ol><li><p>Remove the second element on the <a href=#stack-of-open-elements>stack of open + elements</a> from its parent node, if it has one.</li> + + <li><p>Pop all the nodes from the bottom of the <a href=#stack-of-open-elements>stack of + open elements</a>, from the <a href=#current-node>current node</a> up to + the root <code><a href=#the-html-element>html</a></code> element.</p> + + <li><p><a href=#insert-an-html-element>Insert an HTML element</a> for the + token.</li> + + <li><p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-inframeset title="insertion mode: in frameset">in frameset</a>".</p> + + </ol></dd> + <dt>An end-of-file token</dt> <dd> @@ -40790,6 +40825,8 @@ one. (Newlines at the start of <code><a href=#the-pre-element>pre</a></code> blocks are ignored as an authoring convenience.)</p> + <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p> + </dd> <!-- as normal, but interacts with the form element pointer --> @@ -40819,7 +40856,9 @@ <p>Run the following algorithm:</p> - <ol><li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current + <ol><li><p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</li> + + <li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current node</a> (the bottommost node of the stack).</li> <li><p>If <var title="">node</var> is an <code><a href=#the-li-element>li</a></code> element, @@ -40865,7 +40904,9 @@ <p>Run the following algorithm:</p> - <ol><li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current + <ol><li><p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</li> + + <li><p>Initialize <var title="">node</var> to be the <a href=#current-node>current node</a> (the bottommost node of the stack).</li> <li><p>If <var title="">node</var> is a <code><a href=#the-dd-element>dd</a></code> or @@ -41310,6 +41351,8 @@ <p>Insert a marker at the end of the <a href=#list-of-active-formatting-elements>list of active formatting elements</a>.</p> + <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p> + </dd> <dt>A start tag token whose tag name is one of: "applet", @@ -41324,6 +41367,8 @@ <p>Insert a marker at the end of the <a href=#list-of-active-formatting-elements>list of active formatting elements</a>.</p> + <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p> + </dd> <dt>An end tag token whose tag name is one of: "applet", "button", @@ -41351,16 +41396,6 @@ </ol></dd> - <dt>A start tag whose tag name is "xmp"</dt> - <dd> - - <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if - any.</p> - - <p>Follow the <a href=#generic-cdata-element-parsing-algorithm>generic CDATA element parsing algorithm</a>.</p> - - </dd> - <dt>A start tag whose tag name is "table"</dt> <dd> @@ -41371,6 +41406,8 @@ <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p> + <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p> + <p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-intable title="insertion mode: in table">in table</a>".</p> </dd> @@ -41389,6 +41426,10 @@ <p><a href=#acknowledge-self-closing-flag title="acknowledge self-closing flag">Acknowledge the token's <i>self-closing flag</i></a>, if it is set.</p> + <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p> <!-- + shouldn't really do it for <area>, <basefont>, <bgsound>, and + <spacer> --> + </dd> <dt>A start tag whose tag name is one of: "param", "source"</dt> @@ -41418,6 +41459,8 @@ <p><a href=#acknowledge-self-closing-flag title="acknowledge self-closing flag">Acknowledge the token's <i>self-closing flag</i></a>, if it is set.</p> + <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p> + </dd> <dt>A start tag whose tag name is "image"</dt> @@ -41519,15 +41562,41 @@ <li><p>Let the <a href=#original-insertion-mode>original insertion mode</a> be the current <a href=#insertion-mode>insertion mode</a>.</p> + <li><p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not + ok".</li> + <li><p>Switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incdata title="insertion mode: in CDATA/RCDATA">in CDATA/RCDATA</a>".</li> </ol></dd> - <dt>A start tag whose tag name is one of: "iframe", "noembed"</dt> + <dt>A start tag whose tag name is "xmp"</dt> + <dd> + + <p><a href=#reconstruct-the-active-formatting-elements>Reconstruct the active formatting elements</a>, if + any.</p> + + <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p> + + <p>Follow the <a href=#generic-cdata-element-parsing-algorithm>generic CDATA element parsing algorithm</a>.</p> + + </dd> + + <dt>A start tag whose tag name is "iframe"</dt> + <dd> + + <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p> + + <p>Follow the <a href=#generic-cdata-element-parsing-algorithm>generic CDATA element parsing algorithm</a>.</p> + + </dd> + + <dt>A start tag whose tag name is "noembed"</dt> <dt>A start tag whose tag name is "noscript", if the <a href=#scripting-flag>scripting flag</a> is enabled</dt> <dd> + <p>Follow the <a href=#generic-cdata-element-parsing-algorithm>generic CDATA element parsing algorithm</a>.</p> + </dd> <dt>A start tag whose tag name is "select"</dt> @@ -41538,6 +41607,8 @@ <p><a href=#insert-an-html-element>Insert an HTML element</a> for the token.</p> + <p>Set the <a href=#frameset-ok-flag>frameset-ok flag</a> to "not ok".</p> + <p>If the <a href=#insertion-mode>insertion mode</a> is one of <a href=#parsing-main-intable title="insertion mode: in table">in table</a>", "<a href=#parsing-main-incaption title="insertion mode: in caption">in caption</a>", "<a href=#parsing-main-incolgroup title="insertion mode: in column group">in column group</a>", "<a href=#parsing-main-intbody title="insertion mode: in table body">in table body</a>", "<a href=#parsing-main-intr title="insertion mode: in row">in @@ -41662,8 +41733,8 @@ --> <dt>A start <!--or end--> tag whose tag name is one of: "caption", - "col", "colgroup", "frame", "frameset", "head", "tbody", "td", - "tfoot", "th", "thead", "tr"</dt> + "col", "colgroup", "frame", "head", "tbody", "td", "tfoot", "th", + "thead", "tr"</dt> <!--<dt>An end tag whose tag name is one of: "area", "base", "basefont", "bgsound", "command", "embed", "eventsource", "hr", "iframe", "image", "img", "input", "isindex", "link", "meta", @@ -41845,7 +41916,7 @@ </dd> </dl><h5 id=parsing-main-intable><span class=secno>8.2.5.12 </span>The "<dfn title="insertion mode: in table">in table</dfn>" insertion mode</h5><p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intable title="insertion - mode: in table">in table</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of one of U+0009 CHARACTER + mode: in table">in table</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dd> @@ -42076,7 +42147,7 @@ </dd> </dl><h5 id=parsing-main-incolgroup><span class=secno>8.2.5.14 </span>The "<dfn title="insertion mode: in column group">in column group</dfn>" insertion mode</h5><p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-incolgroup title="insertion - mode: in column group">in column group</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of one of U+0009 CHARACTER + mode: in column group">in column group</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dd> @@ -42729,7 +42800,7 @@ </dd> </dl><h5 id=parsing-main-afterbody><span class=secno>8.2.5.21 </span>The "<dfn title="insertion mode: after body">after body</dfn>" insertion mode</h5><p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-afterbody title="insertion - mode: after body">after body</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of one of U+0009 CHARACTER + mode: after body">after body</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dd> @@ -42783,7 +42854,7 @@ </dd> </dl><h5 id=parsing-main-inframeset><span class=secno>8.2.5.22 </span>The "<dfn title="insertion mode: in frameset">in frameset</dfn>" insertion mode</h5><p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inframeset title="insertion - mode: in frameset">in frameset</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of one of U+0009 CHARACTER + mode: in frameset">in frameset</a>", tokens must be handled as follows:<dl class=switch><dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dd> @@ -42872,7 +42943,7 @@ </dd> </dl><h5 id=parsing-main-afterframeset><span class=secno>8.2.5.23 </span>The "<dfn title="insertion mode: after frameset">after frameset</dfn>" insertion mode</h5><p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-afterframeset title="insertion - mode: after frameset">after frameset</a>", tokens must be handled as follows:</p><!-- due to rules in the "in frameset" mode, this can't be entered in the fragment case --><dl class=switch><dt>A character token that is one of one of U+0009 CHARACTER + mode: after frameset">after frameset</a>", tokens must be handled as follows:</p><!-- due to rules in the "in frameset" mode, this can't be entered in the fragment case --><dl class=switch><dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dd> @@ -42932,7 +43003,7 @@ </dd> <dt>A DOCTYPE token</dt> - <dt>A character token that is one of one of U+0009 CHARACTER + <dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dt>A start tag whose tag name is "html"</dt> @@ -42962,7 +43033,7 @@ </dd> <dt>A DOCTYPE token</dt> - <dt>A character token that is one of one of U+0009 CHARACTER + <dt>A character token that is one of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM FEED (FF), <!--U+000D CARRIAGE RETURN (CR),--> or U+0020 SPACE</dt> <dt>A start tag whose tag name is "html"</dt>
Received on Saturday, 24 January 2009 01:52:38 UTC