diff --git a/sections/semantics-embedded-content.include b/sections/semantics-embedded-content.include index eae1e22ec1..2c7b543e3c 100644 --- a/sections/semantics-embedded-content.include +++ b/sections/semantics-embedded-content.include @@ -200,7 +200,7 @@
  • If the author avoids specifying any image in the HTML markup and instead instantiates a single download from script, that avoids the double download problem above but instead it makes - no image be downloaded at all for users with scripting disabled and it disables the agressive + no image be downloaded at all for users with scripting disabled and it disables the aggressive image downloading optimization.
  • @@ -454,10 +454,10 @@ - The <{picture}> element is a container - which provides multiples sources to its contained <{img}> element - to allow authors to declaratively control or give hints to the user agent about which image resource to use, - based on the screen pixel density, viewport size, image format, and other factors. It represents its children. + The <{picture}> element is a container which provides multiples sources to its contained + <{img}> element to allow authors to declaratively control or give hints to the user agent about + which image resource to use, based on the screen pixel density, viewport size, image + format, and other factors. It represents its children.

    The <{picture}> element is somewhat different @@ -813,12 +813,11 @@ has the same width descriptor value as another image candidate string's width descriptor value for the same element. - There must not be an image candidate string for an element that - has the same pixel density descriptor value as another - image candidate string's pixel density descriptor value for the same element. - For the purpose of this requirement, - an image candidate string with no descriptors is equivalent to - an image candidate string with a 1x descriptor. + There must not be an image candidate string for an element that has the same + pixel density descriptor value as another image candidate string's + pixel density descriptor value for the same element. + For the purpose of this requirement, an image candidate string with no descriptors + is equivalent to an image candidate string with a 1x descriptor. If a <{source}> element has a sizes attribute present or an <{img}> element has a sizes attribute present, @@ -904,9 +903,9 @@ available.

    Broken
    -
    The user agent has obtained all of the image data that it can, but it cannot even decode the - image enough to get the image dimensions (e.g., the image is corrupted, or the format is not - supported, or no data could be obtained).
    +
    The user agent has obtained all of the image data that it can, but it cannot even decode + the image enough to get the image dimensions (e.g., the image is corrupted, or the format is + not supported, or no data could be obtained).
    @@ -1243,16 +1242,18 @@ task that is queued by the networking task source once the resource has been fetched (defined below) has been run. -

    This, unfortunately, can be used to perform a rudimentary port scan of the - user's local network (especially in conjunction with scripting, though scripting isn't actually - necessary to carry out such an attack). User agents may implement cross-origin access control policies that are stricter than those - described above to mitigate this attack, but unfortunately such policies are typically not - compatible with existing Web content.

    +

    + This, unfortunately, can be used to perform a rudimentary port scan of the user's local + network (especially in conjunction with scripting, though scripting isn't actually + necessary to carry out such an attack). User agents may implement cross-origin access + control policies that are stricter than those described above to mitigate this attack, but + unfortunately such policies are typically not compatible with existing Web content. +

    - If the resource is CORS-same-origin, each task - that is queued by the networking task source - while the image is being fetched, if image request is the current - request, must fire a progress event named progress at the <{img}> element. + If the resource is CORS-same-origin, each task that is queued by the + networking task source while the image is being fetched, if image request + is the current request, must fire a progress event named progress + at the <{img}> element. @@ -1861,11 +1862,10 @@ Otherwise, let density be the result.

    - If density is zero, - the intrinsic dimensions will be infinite. - User agents are expected to have limits in how big images can be rendered, - which is allowed by the hardware limitations clause. -

    + If density is zero, the intrinsic dimensions will be infinite. + User agents are expected to have limits in how big images can be rendered, + which is allowed by the hardware limitations clause. +

    @@ -2013,10 +2013,9 @@ and a unit of x.

    - If the source size is zero, - the density would be infinity, - which results in the intrinsic dimensions being zero by zero. -

    + If the source size is zero, the density would be infinity, + which results in the intrinsic dimensions being zero by zero. +

    @@ -2035,11 +2034,11 @@ which image to use, in case the environment changes again in the meantime.)

    - User agents are encouraged to run this algorithm in particular when the user changes the viewport's size - (e.g., by resizing the window or changing the page zoom), - and when an <{img}> element is inserted into a document, - so that the density-corrected intrinsic width and height match the new viewport, - and so that the correct image is chosen when art direction is involved. + User agents are encouraged to run this algorithm in particular when the user changes the + viewport's size (e.g., by resizing the window or changing the page zoom), + and when an <{img}> element is inserted into a document, + so that the density-corrected intrinsic width and height match the new viewport, + and so that the correct image is chosen when art direction is involved.

      @@ -2288,16 +2287,12 @@ with an <{a/href}> attribute.

      - The usemap and - ismap attributes - can result in confusing behavior when used together with - <{source}> elements with the - media attribute specified - in a <{picture}> element. + The usemap and ismap attributes can result in confusing behavior + when used together with <{source}> elements with the media attribute specified + in a <{picture}> element.

      - The <{img}> element supports dimension - attributes. + The <{img}> element supports dimension attributes. The alt, src, srcset and sizes IDL attributes must reflect the respective content attributes of the same name. @@ -2922,7 +2917,7 @@ <p>A poem by Alfred Lord Tennyson</p> </header> - <img src="shalott.jpeg" alt="Painting - a young woman with long hair, sitting in a wooden boat. Full description below." longdesc="#des"> + <img src="shalott.jpg" alt="Painting - a young woman with long hair, sitting in a wooden boat. Full description below." longdesc="#des"> <p><a href="#des">Description of the painting</a>.</p> <!-- Full Recitation of Alfred, Lord Tennyson's Poem. --> @@ -2942,6 +2937,7 @@

      Portrait photo (black and white) of Robin, accompanied by a heading 'Robin Berjon' and a question 'what more needs to be said?'

      + <img src="orateur_robin_berjon.png" alt="Portrait photo (black and white) of Robin."> <h1>Robin Berjon</h1> @@ -3247,6 +3243,7 @@ In other words, the only content of the <code>figure</code> is an <{img}> element and a <code>figcaption</code> element, and the <{figcaption}> element must include (caption) content. </p> + <p class="note"> Such cases are to be kept to an absolute minimum. If there is even the slightest possibility of the author @@ -4124,10 +4121,10 @@ are to be <a>allowed to use</a> the <a><code>PaymentRequest</code></a> interface to make payment requests. - The <dfn element-attr for="iframe"><code>allowusermedia</code></dfn> attribute - is a <a>boolean attribute</a>. When specified, it indicates that {{Document}} objects - in the <{iframe}> element's <a>browsing context</a> are to be <a>allowed to - use</a> {{Element/getUserMedia()}} (if it's not blocked for other reasons, e.g. there + The <dfn element-attr for="iframe"><code>allowusermedia</code></dfn> attribute + is a <a>boolean attribute</a>. When specified, it indicates that {{Document}} objects + in the <{iframe}> element's <a>browsing context</a> are to be <a>allowed to + use</a> {{Element/getUserMedia()}} (if it's not blocked for other reasons, e.g. there is another ancestor <{iframe}> without this attribute set). To determine whether a {{Document}} object <var>document</var> is @@ -4441,13 +4438,13 @@ attribute's value is a type that a <a>plugin</a> supports, then the value of the </ol> Whether the resource is fetched successfully or not (e.g., whether the response status was - an <a>ok status</a>) must be ignored when determining the content's type and when handing the resource to the - plugin. + an <a>ok status</a>) must be ignored when determining the content's type and when handing + the resource to the plugin. <p class="note"> - This allows servers to return data for plugins even with error responses (e.g., - HTTP 500 Internal Server Error codes can still contain plugin data). - </p> + This allows servers to return data for plugins even with error responses (e.g., + HTTP 500 Internal Server Error codes can still contain plugin data). + </p> Fetching the resource must <a>delay the load event</a> of the element's <a>node document</a>. @@ -4864,16 +4861,16 @@ attribute's value is a type that a <a>plugin</a> supports, then the value of the <li> - If the type specified in <a>the resource's Content-Type - metadata</a> is "<code>application/octet-stream</code>", then set <var>binary</var> to true. + If the type specified in <a>the resource's Content-Type metadata</a> is + "<code>application/octet-stream</code>", then set <var>binary</var> to true. </li> <li> - If <var>binary</var> is false, then let the <var>resource - type</var> be the type specified in <a>the resource's - Content-Type metadata</a>, and jump to the step below labeled <i>handler</i>. + If <var>binary</var> is false, then let the <var>resource type</var> be the type + specified in <a>the resource's Content-Type metadata</a>, and jump to the step + below labeled <i>handler</i>. </li> @@ -4888,7 +4885,7 @@ attribute's value is a type that a <a>plugin</a> supports, then the value of the <li> If the attribute's value is a type that a <a>plugin</a> supports, or the - attribute's value is a type that starts with "<code>image/</code>" that is + attribute's value is a type that starts with "<code>image/</code>" that is not also an <a>XML MIME type</a>, then let the <var>resource type</var> be the type specified in that <code>type</code> attribute. @@ -4908,8 +4905,7 @@ attribute's value is a type that a <a>plugin</a> supports, then the value of the </dd> - <dt>Otherwise, if the resource does not have <a>associated - Content-Type metadata</a></dt> + <dt>Otherwise, if the resource does not have <a>associated Content-Type metadata</a></dt> <dd> @@ -4929,8 +4925,7 @@ attribute's value is a type that a <a>plugin</a> supports, then the value of the If <var>tentative type</var> is <em>not</em> <code>application/octet-stream</code>, then let <var>resource type</var> be - <var>tentative type</var> and jump to the step below labeled - <i>handler</i>. + <var>tentative type</var> and jump to the step below labeled <i>handler</i>. </li> @@ -4945,9 +4940,9 @@ attribute's value is a type that a <a>plugin</a> supports, then the value of the <li> If applying the <a>URL parser</a> algorithm to the [=url/URL=] of the - specified resource (after any redirects) results in a <a>URL record</a> whose <a>path</a> component matches a pattern that a <a>plugin</a> - supports, then let <var>resource type</var> be the type that the plugin can - handle. + specified resource (after any redirects) results in a <a>URL record</a> whose <a>path</a> + component matches a pattern that a <a>plugin</a> supports, then let + <var>resource type</var> be the type that the plugin can handle. <p class="example">For example, a plugin might say that it can handle resources with <a>path</a> components that end with the four character string "<code>.swf</code>".</p> @@ -4984,11 +4979,12 @@ attribute's value is a type that a <a>plugin</a> supports, then the value of the </dd> - <dt>If the <var>resource type</var> is an <a>XML MIME type</a>, or if the <var>resource type</var> - does not start with "<code>image/</code>"</dt> + <dt>If the <var>resource type</var> is an <a>XML MIME type</a>, or if the + <var>resource type</var> does not start with "<code>image/</code>"</dt> <dd> - The <{object}> element must be associated with a newly created <a>nested browsing context</a>, if it does not already have one. + The <{object}> element must be associated with a newly created + <a>nested browsing context</a>, if it does not already have one. If the [=url/URL=] of the given resource is not <code>about:blank</code>, the element's <a>nested browsing context</a> must then be <a>navigated</a> to that resource, with @@ -5265,7 +5261,7 @@ attribute's value is a type that a <a>plugin</a> supports, then the value of the teapot with a shiny metallic finish on which the surroundings are reflected, with a faint shadow caused by the lighting."> - <p>To see the teapot actually rendered by O3D on your computer, please download and install the + <p>To see the teapot actually rendered by O3D on your computer, please download and install the <a href="https://example.com/o3d/install">O3D plugin</a>.</p> </object> <script src="o3d-teapot.js"></script> @@ -6192,9 +6188,10 @@ zero or more <{track}> elements, then when it is used to label a potential <a>media resource</a>. <p class="note"> - Only the <a>MIME type</a> "<code>application/octet-stream</code>" with no - parameters is special-cased here; if any parameter appears with it, it will be treated just like - any other <a>MIME type</a>. This is a deviation from the rule that unknown <a>MIME type</a> parameters should be ignored. + Only the <a>MIME type</a> "<code>application/octet-stream</code>" with no parameters is + special-cased here; if any parameter appears with it, it will be treated just like any other + <a>MIME type</a>. This is a deviation from the rule that unknown <a>MIME type</a> parameters + should be ignored. </p> <dl class="domintro"> @@ -7016,22 +7013,21 @@ zero or more <{track}> elements, then above. If it is not known (e.g., a stream that is in principle infinite), update the <code>duration</code> attribute to the value positive Infinity. <p class="note"> - The user agent will <a>queue a task</a> - to <a>fire a simple event</a> named <code>durationchange</code> at the element at this point. - </p> + The user agent will <a>queue a task</a> to <a>fire a simple event</a> named + <code>durationchange</code> at the element at this point. + </p> </li> <li> - For <{video}> elements, set the <code>videoWidth</code> and <code>videoHeight</code> attributes, and <a>queue a task</a> - to <a>fire a simple event</a> named <code>resize</code> at - the <a>media element</a>. + For <{video}> elements, set the <code>videoWidth</code> and <code>videoHeight</code> + attributes, and <a>queue a task</a> to <a>fire a simple event</a> named + <code>resize</code> at the <a>media element</a>. <p class="note"> - Further <code>resize</code> events will be fired - if the dimensions subsequently change. - </p> + Further <code>resize</code> events will be fired if the dimensions subsequently change. + </p> </li> @@ -7040,9 +7036,9 @@ zero or more <{track}> elements, then Set the <code>readyState</code> attribute to <code>HAVE_METADATA</code>. <p class="note"> - A <code>loadedmetadata</code> DOM event - will be <a>fired</a> as part of setting the <code>readyState</code> attribute to a new value. - </p> + A <code>loadedmetadata</code> DOM event will be <a>fired</a> as part of setting the + <code>readyState</code> attribute to a new value. + </p> </li> @@ -7059,12 +7055,15 @@ zero or more <{track}> elements, then <li> If either the <a>media resource</a> or the address of the <var>current - media resource</var> indicate a particular start time, then set the <var>initial playback - position</var> to that time and, if <var>jumped</var> is still false, <a>seek</a> to that time and let <var>jumped</var> be - true. - - <p class="example">For example, with media formats that support the <cite>media fragment syntax</cite> - the <a for="url">fragment</a>, can be used to indicate a start position. [[!MEDIA-FRAGS]]</p> + media resource</var> indicate a particular start time, then set the + <var>initial playback position</var> to that time and, if <var>jumped</var> is still + false, <a>seek</a> to that time and let <var>jumped</var> be true. + + <p class="example"> + For example, with media formats that support the <cite>media fragment syntax</cite> + the <a for="url">fragment</a>, can be used to indicate a start position. + [[!MEDIA-FRAGS]] + </p> </li> @@ -8029,19 +8028,19 @@ zero or more <{track}> elements, then <hr /> - The <dfn element-attr for="media"><code>remote</code></dfn> attribute + The <dfn element-attr for="media"><code>remote</code></dfn> attribute MUST return the <a>RemotePlayback object</a> associated with the <a lt="media elements">media element</a>. The <dfn element-attr for="media"><code>disableRemotePlayback</code></dfn> attribute is a <a>boolean attribute</a>. When present, the user agent MUST NOT play the <a lt="media elements">media element</a> remotely or present any UI to do so. - When the <{media/disableRemotePlayback}> attribute is added to the <a + When the <{media/disableRemotePlayback}> attribute is added to the <a lt="media elements">media element</a>, the user agent MUST run the steps to <a>disable remote playback</a>. A corresponding <dfn attribute for="HTMLMediaElement"><code> - disableRemotePlayback</code></dfn> IDL attribute which reflects the - value of each element’s <{media/disableRemotePlayback}> content - attribute is added to the {{HTMLMediaElement}} interface. The + disableRemotePlayback</code></dfn> IDL attribute which reflects the + value of each element’s <{media/disableRemotePlayback}> content + attribute is added to the {{HTMLMediaElement}} interface. The {{HTMLMediaElement/disableRemotePlayback}} IDL attribute MUST <a>reflect</a> the content attribute of the same name. <hr /> @@ -10714,12 +10713,11 @@ red:89 have been missed; but also, if the cues are short it's possible the script will never see that they are active unless it listens to them specifically. - When using cues in this manner, authors are encouraged to use the <code>cuechange</code> event to update the current annotations. (In - particular, using the <code>timeupdate</code> event would be less - appropriate as it would require doing work even when the cues haven't changed, and, more - importantly, would introduce a higher latency between when the metadata cues become active and - when the display is updated, since <code>timeupdate</code> events - are rate-limited.) + When using cues in this manner, authors are encouraged to use the <code>cuechange</code> event + to update the current annotations. (In particular, using the <code>timeupdate</code> event + would be less appropriate as it would require doing work even when the cues haven't changed, + and, more importantly, would introduce a higher latency between when the metadata cues become + active and when the display is updated, since <code>timeupdate</code> events are rate-limited.) <h5 id="identifying-a-track-kind-through-a-url">Identifying a track kind through a URL</h5> @@ -12067,10 +12065,9 @@ red:89 <p class="note"> - Because a <{map}> element (and its <{area}> elements) can be - associated with multiple <{img}> and <{object}> elements, it is possible for an - <{area}> element to correspond to multiple <a>focusable area</a>s - of the document. + Because a <{map}> element (and its <{area}> elements) can be associated with multiple + <{img}> and <{object}> elements, it is possible for an <{area}> element to correspond to + multiple <a>focusable area</a>s of the document. </p> Image maps are <a>live</a>; if the DOM is mutated, then the user agent must act as if it @@ -12179,12 +12176,12 @@ red:89 <strong>Author requirements</strong>: The <dfn element-attr for="media,img,iframe,embed,object,video,input"><code>width</code></dfn> and - <dfn element-attr for="media,img,iframe,embed,object,video,input"><code>height</code></dfn> attributes - on <{img}>, <{iframe}>, <{embed}>, <{object}>, <{video}>, and, when their <code>type</code> attribute - is in the <{input/Image|Image Button}> state, <{input}> elements may be - specified to give the dimensions of the visual content of the element (the width and height - respectively, relative to the nominal direction of the output medium), in CSS pixels. The - attributes, if specified, must have values that are <a>valid non-negative integers</a>. + <dfn element-attr for="media,img,iframe,embed,object,video,input"><code>height</code></dfn> + attributes on <{img}>, <{iframe}>, <{embed}>, <{object}>, <{video}>, and, when their + <code>type</code> attribute is in the <{input/Image|Image Button}> state, <{input}> elements + may be specified to give the dimensions of the visual content of the element (the width and + height respectively, relative to the nominal direction of the output medium), in CSS pixels. + The attributes, if specified, must have values that are <a>valid non-negative integers</a>. The specified dimensions given may differ from the dimensions specified in the resource itself, since the resource may have a resolution that differs from the CSS pixel resolution. (On screens, @@ -12207,8 +12204,9 @@ red:89 </ul> The <var>target ratio</var> is the ratio of the <a for="css">intrinsic width</a> to the - <a for="css">intrinsic height</a> in the resource. The <var>specified width</var> and <var>specified - height</var> are the values of the <code>width</code> and <code>height</code> attributes respectively. + <a for="css">intrinsic height</a> in the resource. The <var>specified width</var> and + <var>specified height</var> are the values of the <code>width</code> and <code>height</code> + attributes respectively. The two attributes must be omitted if the resource in question does not have both an <a for="css">intrinsic width</a> and an <a for="css">intrinsic height</a>. @@ -12216,7 +12214,9 @@ red:89 If the two attributes are both zero, it indicates that the element is not intended for the user (e.g., it might be a part of a service to count page views). - <p class="note">The dimension attributes are not intended to be used to stretch the image.</p> + <p class="note"> + The dimension attributes are not intended to be used to stretch the image. + </p> <strong>User agent requirements</strong>: User agents are expected to use these attributes <a>as hints for the rendering</a>. @@ -12229,13 +12229,14 @@ red:89 <p class="note"> For <{iframe}>, <{embed}>, and <{object}> the IDL - attributes are <code>DOMString</code>; for <{video}> the IDL attributes are <code>unsigned long</code>. + attributes are <code>DOMString</code>; for <{video}> the IDL attributes are + <code>unsigned long</code>. </p> <p class="note"> The corresponding IDL attributes for <{img}> and - <{input}> elements are defined in those respective elements' - sections, as they are slightly more specific to those elements' other behaviors. + <{input}> elements are defined in those respective elements' + sections, as they are slightly more specific to those elements' other behaviors. </p> </section>