|
25 | 25 |
|
26 | 26 | <h1 id=html-5>HTML 5</h1>
|
27 | 27 |
|
28 |
| - <h2 class="no-num no-toc" id=draft>Draft Recommendation — 16 May |
| 28 | + <h2 class="no-num no-toc" id=draft>Draft Recommendation — 19 May |
29 | 29 | 2008</h2>
|
30 | 30 |
|
31 | 31 | <p>You can take part in this work. <a
|
@@ -14137,13 +14137,17 @@ the time Marco had stuck his tongue out...</p></pre>
|
14137 | 14137 |
|
14138 | 14138 | <dd><code title=attr-iframe-name><a href="#name1">name</a></code>
|
14139 | 14139 |
|
| 14140 | + <dd><code title=attr-iframe-seamless><a |
| 14141 | + href="#seamlesscode">seamless</a></code> |
| 14142 | + |
14140 | 14143 | <dt>DOM interface:
|
14141 | 14144 |
|
14142 | 14145 | <dd>
|
14143 | 14146 | <pre
|
14144 | 14147 | class=idl>interface <dfn id=htmliframeelement>HTMLIFrameElement</dfn> : <a href="#htmlelement">HTMLElement</a> {
|
14145 | 14148 | attribute DOMString <a href="#src2" title=dom-iframe-src>src</a>;
|
14146 |
| - attribute DOMString <span title=dom-iframe-name>name</span>;<!-- |
| 14149 | + attribute DOMString <span title=dom-iframe-name>name</span>; |
| 14150 | + attribute DOMString <span title=dom-iframe-seamless>seamless</span>;<!-- |
14147 | 14151 | readonly attribute Document <span title="dom-iframe-contentDocument">contentDocument</span>;
|
14148 | 14152 | readonly attribute <span>Window</span> <span title="dom-iframe-contentWindow">contentWindow</span>;-->
|
14149 | 14153 | };</pre>
|
@@ -14222,6 +14226,89 @@ the time Marco had stuck his tongue out...</p></pre>
|
14222 | 14226 | href="#navigate" title=navigate>navigated</a>, that will further <a
|
14223 | 14227 | href="#delays">delay the <code title=event-load>load</code> event</a>.
|
14224 | 14228 |
|
| 14229 | + <p>The <dfn id=seamlesscode |
| 14230 | + title=attr-iframe-seamless><code>seamless/code></code></dfn> attribute is |
| 14231 | + a boolean attribute. When specified, it indicates that the <code><a |
| 14232 | + href="#iframe">iframe</a></code> element's <a href="#browsing1">browsing |
| 14233 | + context</a> is to be rendered in a manner that makes it appear to be part |
| 14234 | + of the containing document (seamlessly included in the parent document). |
| 14235 | + Specifically, when the attribute is set on an element and while the <a |
| 14236 | + href="#browsing1">browsing context</a>'s <a href="#active">active |
| 14237 | + document</a> has the <a href="#same-origin">same origin</a> as the |
| 14238 | + <code><a href="#iframe">iframe</a></code> element's document, or the <a |
| 14239 | + href="#browsing1">browsing context</a>'s <a href="#active">active |
| 14240 | + document</a>'s <em>URI</em> has the <a href="#same-origin">same origin</a> |
| 14241 | + as the <code><a href="#iframe">iframe</a></code> element's document, the |
| 14242 | + following requirements apply: |
| 14243 | + |
| 14244 | + <ul> |
| 14245 | + <li> |
| 14246 | + <p>The user agent must set the <span>seamless browsing context</span> |
| 14247 | + flag to true for that <a href="#browsing1">browsing context</a>. This |
| 14248 | + will <a href="#seamlessLinks">cause links to open in the parent browsing |
| 14249 | + context</a>. |
| 14250 | + |
| 14251 | + <li> |
| 14252 | + <p>In a CSS-supporting user agent: the user agent must add all the style |
| 14253 | + sheets that apply to the <code><a href="#iframe">iframe</a></code> |
| 14254 | + element to the cascade of the <a href="#active">active document</a> of |
| 14255 | + the <code><a href="#iframe">iframe</a></code> element's <a |
| 14256 | + href="#nested0">nested browsing context</a>, at the appropriate cascade |
| 14257 | + levels, before any style sheets specified by the document itself. |
| 14258 | + |
| 14259 | + <li> |
| 14260 | + <p>In a CSS-supporting user agent: the user agent must, for the purpose |
| 14261 | + of CSS property inheritance only, treat the root element of the <a |
| 14262 | + href="#active">active document</a> of the <code><a |
| 14263 | + href="#iframe">iframe</a></code> element's <a href="#nested0">nested |
| 14264 | + browsing context</a> as being a child of the <code><a |
| 14265 | + href="#iframe">iframe</a></code> element. (Thus inherited properties on |
| 14266 | + the root element of the document in the <code><a |
| 14267 | + href="#iframe">iframe</a></code> will inherit the computed values of |
| 14268 | + those properties on the <code><a href="#iframe">iframe</a></code> |
| 14269 | + element instead of taking their initial values.) |
| 14270 | + |
| 14271 | + <li> |
| 14272 | + <p>In visual media, in a CSS-supporting user agent: the user agent should |
| 14273 | + set the intrinsic width of the <code><a href="#iframe">iframe</a></code> |
| 14274 | + to the width that the element would have if it was a non-replaced |
| 14275 | + block-level element with 'width: auto'. |
| 14276 | + |
| 14277 | + <li> |
| 14278 | + <p>In visual media, in a CSS-supporting user agent: the user agent should |
| 14279 | + set the intrinsic height of the <code><a |
| 14280 | + href="#iframe">iframe</a></code> to the height of the bounding box |
| 14281 | + around the content rendered in the <code><a |
| 14282 | + href="#iframe">iframe</a></code> at its current width. |
| 14283 | + |
| 14284 | + <li> |
| 14285 | + <p>In speech media, the user agent should render the <a |
| 14286 | + href="#nested0">nested browsing context</a> without announcing that it |
| 14287 | + is a separate document. |
| 14288 | + |
| 14289 | + <li> |
| 14290 | + <p>User agents should, in general, act as if the <a href="#active">active |
| 14291 | + document</a> of the <code><a href="#iframe">iframe</a></code>'s <a |
| 14292 | + href="#nested0">nested browsing context</a> was part of the document |
| 14293 | + that the <code><a href="#iframe">iframe</a></code> is in.</p> |
| 14294 | + |
| 14295 | + <p class=example>For example if the user agent supports listing all the |
| 14296 | + links in a document, links in "seamlessly" nested documents would be |
| 14297 | + included in that list without being significantly distinguished from |
| 14298 | + links in the document itself.</p> |
| 14299 | + </ul> |
| 14300 | + |
| 14301 | + <p class=big-issue>Parts of the above might get moved into the rendering |
| 14302 | + section at some point. |
| 14303 | + |
| 14304 | + <p>If the attribute is not specified, or if the <a |
| 14305 | + href="#origin0">origin</a> conditions listed above are not met, then the |
| 14306 | + user agent should render the <a href="#nested0">nested browsing |
| 14307 | + context</a> in a manner that is clearly distinguishable as a separate <a |
| 14308 | + href="#browsing1">browsing context</a>, and the <span>seamless browsing |
| 14309 | + context</span> flag must be set to false for that <a |
| 14310 | + href="#browsing1">browsing context</a>. |
| 14311 | + |
14225 | 14312 | <p>An <code><a href="#iframe">iframe</a></code> element never has <a
|
14226 | 14313 | href="#fallback">fallback content</a>, as it will always create a nested
|
14227 | 14314 | <a href="#browsing1">browsing context</a>, regardless of whether the
|
@@ -31836,6 +31923,16 @@ user reload must be equivalent to .reload()
|
31836 | 31923 | following steps:
|
31837 | 31924 |
|
31838 | 31925 | <ol>
|
| 31926 | + <li id=seamlessLinks> |
| 31927 | + <p>If the <a href="#source0">source browsing context</a> is the same as |
| 31928 | + the <a href="#browsing1">browsing context</a> being navigated, and this |
| 31929 | + browsing context has its <span>seamless browsing context</span> flag |
| 31930 | + set, then find the nearest <span>ancestor browsing context</span> that |
| 31931 | + does not have its <span>seamless browsing context</span> flag set, and |
| 31932 | + continue these steps as if <em>that</em> <a href="#browsing1">browsing |
| 31933 | + context</a> was the one that was going to be <a href="#navigate" |
| 31934 | + title=navigate>navigated</a> instead. |
| 31935 | + |
31839 | 31936 | <li>
|
31840 | 31937 | <p>Cancel any preexisting attempt to navigate the browsing context.
|
31841 | 31938 |
|
|
0 commit comments