Fixing up the links the broke when moving to respec.
authorSilvia Pfeiffer
Sun, 31 Mar 2013 21:33:55 +1100
changeset 79 0fa6f38cb8ed
parent 78 caf8ecb103a9
child 80 0d1c8149e7b4
Fixing up the links the broke when moving to respec.
webvtt/webvtt.html
--- a/webvtt/webvtt.html	Sat Mar 23 23:59:33 2013 +1100
+++ b/webvtt/webvtt.html	Sun Mar 31 21:33:55 2013 +1100
@@ -8,14 +8,14 @@
       For the three scripts below, if your spec resides on dev.w3 you can check them
       out in the same tree and use relative links so that they'll work offline,
      -->
-    <!-- old but local:
-    <script src='../../2009/dap/ReSpec.js/js/respec.js' class='remove'></script>
+    <!-- local copy:
+    <script src='../../respec/js/require.js' data-main='../../respec/js/profile-w3c-common' async class='remove'></script>
     -->
     <script src='https://www.w3.org/Tools/respec/respec-w3c-common' class='remove' async></script>
     <script class='remove'>
       var respecConfig = {
           // specification status (e.g. WD, LCWD, NOTE, etc.). If in doubt use ED.
-          specStatus:           "WD",
+          specStatus:           "CG-DRAFT",
           
           // the specification's short name, as in http://www.w3.org/TR/short-name/
           shortName:            "webvtt",
@@ -51,8 +51,8 @@
           editors:  [
               { name: "Silvia Pfeiffer", url: "mailto:silviapfeiffer1@gmail.com",
                 company: "NICTA", companyURL: "http://nicta.com.au/" },
-              { name: "Ian Hickson (previous editor)", url: "mailto:ian@hixie.ch",
-                company: "Google", companyURL: "http://google.com/" },
+              { name: "Ian Hickson", url: "mailto:ian@hixie.ch",
+                company: "Google", companyURL: "http://google.com/", note: "previous editor" },
           ],
 
           // authors, add as many as you like. 
@@ -84,7 +84,7 @@
           noIDLIn: "true",
           noIDLSorting: "true",
 
-          additionalHeaderContent: "<p class='copyright'>Copyright © 2011 the Contributors to the VTT Specification, published by the <a href='http://www.w3.org/community/texttracks/'>W3C Web Media Text Tracks Community Group</a> under the <a href='http://www.w3.org/community/about/agreements/cla/'>W3C Community Contributor License Agreement (CLA)</a>. A human-readable <a href='http://www.w3.org/community/about/agreements/cla-deed/'>summary</a> is available.</p><p class='copyright'>This specification is not a W3C Standard nor is it on the W3C Standards Track. It was originally created by the WHATWG and is being further developed by the <a href='http://www.w3.org/community/texttracks/'>W3C Web Media Text Tracks Community Group</a>. Please note that under the <a href='http://www.w3.org/community/about/agreements/cla/'>W3C Community Contributor License Agreement (CLA)</a> there is a limited opt-out and other conditions apply. Learn more about <a href='http://www.w3.org/community/'>W3C Community and Business Groups</a>.",
+          additionalHeaderContent: "",
       };
     </script>
     <script>
@@ -136,8 +136,13 @@
 
   -->
   <body>
+  <section id="sotd">
+    <p>This specification was originally created by the WHATWG as a Living Standard and last published at <a href="http://dev.w3.org/html5/webvtt/">http://dev.w3.org/html5/webvtt/</a>.
+  </section>
+
   <section id='abstract'>
-      <p></p>
+    <p>This is the specification of WebVTT, the Web Video Text Tracks file format.
+    </p>
   </section>
 
   <section>
@@ -392,35 +397,39 @@
   HTML standard. <a href="#refsHTML">[HTML]</a></p>
 
   <ul class="brief">
+   <li><dfn>HTML elements</dfn>
+   <li><dfn>script's document</dfn>
+   <li><dfn>entry script</dfn>
    <li><dfn>MIME type</dfn>
-   <li><dfn>Decoded as UTF-8, with error handling</dfn>
-   <li><dfn>Case-sensitive</dfn>
+   <li><dfn>decoded as UTF-8, with error handling</dfn>
+   <li><dfn>case-sensitive</dfn>
    <li><dfn>Collect a sequence of characters</dfn>
    <li><dfn>ASCII digits</dfn>
-   <li><dfn>Space character</dfn>
+   <li><dfn>Alphanumeric ASCII characters</dfn>
+   <li><dfn>space character</dfn>
    <li><dfn>Skip whitespace</dfn>
-   <li><dfn>Split a string on spaces</dfn>
+   <li><dfn>split a string on spaces</dfn>
    <li><dfn>HTML namespace</dfn>
-   <li><dfn>Media element</dfn>
-   <li><dfn>Current playback position</dfn>
-   <li><dfn>Expose a user interface to the user</dfn>
-   <li><dfn>List of text tracks</dfn>
-   <li><dfn>Text track</dfn>
-   <li><dfn>Text track kind</dfn>
-   <li><dfn>Text track mode</dfn>
-   <li><dfn>Text track showing</dfn>
-   <li><dfn>Text track cue</dfn>
-   <li><dfn>Text track list of cues</dfn>
-   <li><dfn>Text track cue order</dfn>
-   <li><dfn>Text track cue identifier</dfn>
-   <li><dfn>Text track cue start time</dfn>
-   <li><dfn>Text track cue end time</dfn>
-   <li><dfn>Text track cue pause-on-exit flag</dfn>
-   <li><dfn>Text track cue text</dfn>
-   <li><dfn>Text track cue active flag</dfn>
-   <li><dfn>Text track cue display state</dfn>
-   <li><dfn>Rules for updating the text track rendering</dfn>
-   <li><dfn>Rules for rendering the cue in isolation</dfn>
+   <li><dfn>media element</dfn>
+   <li><dfn>current playback position</dfn>
+   <li><dfn>expose a user interface to the user</dfn>
+   <li><dfn>list of text tracks</dfn>
+   <li><dfn>text track</dfn>
+   <li><dfn>text track kind</dfn>
+   <li><dfn>text track mode</dfn>
+   <li><dfn>text track showing</dfn>
+   <li><dfn>text track cue</dfn>
+   <li><dfn>text track list of cues</dfn>
+   <li><dfn>text track cue order</dfn>
+   <li><dfn>text track cue identifier</dfn>
+   <li><dfn>text track cue start time</dfn>
+   <li><dfn>text track cue end time</dfn>
+   <li><dfn>text track cue pause-on-exit flag</dfn>
+   <li><dfn>text track cue text</dfn>
+   <li><dfn>text track cue active flag</dfn>
+   <li><dfn>text track cue display state</dfn>
+   <li><dfn>rules for updating the text track rendering</dfn>
+   <li><dfn>rules for rendering the cue in isolation</dfn>
    <li><dfn><code>TextTrackCue</code></dfn> interface
   </ul>
   </section>
@@ -429,12 +438,12 @@
   <section>
   <h2>Data model</h2>
 
-  <p>WebVTT cues are HTML <span title="text track cue">text track cues</span> that additionally
+  <p>WebVTT cues are HTML <a title="text track cue">text track cues</a> that additionally
   consist of the following: <a href="#refsHTML">[HTML]</a></p>
 
   <dl>
 
-   <dt><dfn title="text track cue writing direction">A writing direction</dfn>
+   <dt><dfn title="Text track cue writing direction">A writing direction</dfn>
    <dd>
     <p>A writing direction, either <dfn title="text track cue horizontal writing
     direction">horizontal</dfn> (a line extends horizontally and is positioned vertically, with
@@ -445,26 +454,26 @@
     growing right</dfn> (a line extends vertically and is positioned horizontally, with consecutive
     lines displayed to the right of each other<!-- used for mongolian -->).</p>
 
-    <p>If the <span title="text track cue writing direction">writing direction</span> is <span
-    title="text track cue horizontal writing direction">horizontal</span>, then <span title="text
-    track cue line position">line position</span> percentages are relative to the height of the
-    video, and <span title="text track cue text position">text position</span> and <span title="text
-    track cue size">size</span> percentages are relative to the width of the video.</p>
-
-    <p>Otherwise, <span title="text track cue line position">line position</span> percentages are
-    relative to the width of the video, and <span title="text track cue text position">text
-    position</span> and <span title="text track cue size">size</span> percentages are relative to
+    <p>If the <a title="Text track cue writing direction">writing direction</a> is <a
+    title="text track cue horizontal writing direction">horizontal</a>, then <a title="text
+    track cue line position">line position</a> percentages are relative to the height of the
+    video, and <a title="text track cue text position">text position</a> and <a title="text
+    track cue size">size</a> percentages are relative to the width of the video.</p>
+
+    <p>Otherwise, <a title="text track cue line position">line position</a> percentages are
+    relative to the width of the video, and <a title="text track cue text position">text
+    position</a> and <a title="text track cue size">size</a> percentages are relative to
     the height of the video.</p>
    </dd>
 
    <dt><dfn title="text track cue snap-to-lines flag">A snap-to-lines flag</dfn>
    <dd>
 
-    <p>A boolean indicating whether the <span title="text track cue line position">line's
-    position</span> is a line position (positioned to a multiple of the line dimensions of the first
+    <p>A boolean indicating whether the <a title="text track cue line position">line's
+    position</a> is a line position (positioned to a multiple of the line dimensions of the first
     line of the cue), or whether it is a percentage of the dimension of the video.</p>
 
-    <p>Cues whose <span>text track cue snap-to-lines flag</span> is set will be placed within the
+    <p>Cues whose <a>text track cue snap-to-lines flag</a> is set will be placed within the
     title-safe area on user agents that use overscan. Cues with the flag unset will be positioned as
     requested (modulo overlap avoidance if multiple cues are in the same place).</p>
 
@@ -473,46 +482,46 @@
    <dt><dfn title="text track cue line position">A line position</dfn>
    <dd>
     <p>Either a number giving the position of the lines of the cue, to be interpreted as defined by
-    the <span title="text track cue writing direction">writing direction</span> and <span
-    title="text track cue snap-to-lines flag">snap-to-lines flag</span> of the cue, or the special
+    the <a title="Text track cue writing direction">writing direction</a> and <a
+    title="text track cue snap-to-lines flag">snap-to-lines flag</a> of the cue, or the special
     value <dfn title="text track cue automatic line position">auto</dfn>, which means the position
     is to depend on the other active tracks.</p>
 
-    <p>A <span>text track cue</span> has a <dfn>text track cue computed line position</dfn> whose
+    <p>A <a>text track cue</a> has a <dfn>text track cue computed line position</dfn> whose
     value is that returned by the following algorithm, which is defined in terms of the other
     aspects of the cue:</p>
 
     <ol>
 
-     <li><p>If the <span>text track cue line position</span> is numeric, the <span>text track cue
-     snap-to-lines flag</span> of the <span>text track cue</span> is not set, and the <span>text
-     track cue line position</span> is negative or greater than 100, then return 100 and abort these
+     <li><p>If the <a>text track cue line position</a> is numeric, the <a>text track cue
+     snap-to-lines flag</a> of the <a>text track cue</a> is not set, and the <a>text
+     track cue line position</a> is negative or greater than 100, then return 100 and abort these
      steps.</p></li>
 
-     <li><p>If the <span>text track cue line position</span> is numeric, return the value of the
-     <span>text track cue line position</span> and abort these steps. (Either the <span>text track
-     cue snap-to-lines flag</span> is set, so any value, not just those in the range 0..100, is
+     <li><p>If the <a>text track cue line position</a> is numeric, return the value of the
+     <a>text track cue line position</a> and abort these steps. (Either the <a>text track
+     cue snap-to-lines flag</a> is set, so any value, not just those in the range 0..100, is
      valid, or the value is in the range 0..100 and is thus valid regardless of the value of that
      flag.)</p></li>
 
-     <li><p>If the <span>text track cue snap-to-lines flag</span> of the <span>text track cue</span>
-     is not set, return the value 100 and abort these steps. (The <span>text track cue line
-     position</span> is the special value <span title="text track cue automatic line
-     position">auto</span>.)</p></li>
-
-     <li><p>Let <var title="">cue</var> be the <span>text track cue</span>.</p></li>
-
-     <li><p>If <var title="">cue</var> is not in a <span title="text track list of cues">list of
-     cues</span> of a <span>text track</span>, or if that <span>text track</span> is not in the
-     <span>list of text tracks</span> of a <span>media element</span>, return &#x2212;1 and abort
+     <li><p>If the <a>text track cue snap-to-lines flag</a> of the <a>text track cue</a>
+     is not set, return the value 100 and abort these steps. (The <a>text track cue line
+     position</a> is the special value <a title="text track cue automatic line
+     position">auto</a>.)</p></li>
+
+     <li><p>Let <var title="">cue</var> be the <a>text track cue</a>.</p></li>
+
+     <li><p>If <var title="">cue</var> is not in a <a title="text track list of cues">list of
+     cues</a> of a <a>text track</a>, or if that <a>text track</a> is not in the
+     <a>list of text tracks</a> of a <a>media element</a>, return &#x2212;1 and abort
      these steps.</p></li>
 
-     <li><p>Let <var title="">track</var> be the <span>text track</span> whose <span title="text
-     track list of cues">list of cues</span> the <var title="">cue</var> is in.</p></li>
-
-     <li><p>Let <var title="">n</var> be the number of <span title="text track">text tracks</span>
-     whose <span>text track mode</span> is <span title="text track showing">showing</span> and that
-     are in the <span>media element</span>'s <span>list of text tracks</span> before <var
+     <li><p>Let <var title="">track</var> be the <a>text track</a> whose <a title="text
+     track list of cues">list of cues</a> the <var title="">cue</var> is in.</p></li>
+
+     <li><p>Let <var title="">n</var> be the number of <a title="text track">text tracks</a>
+     whose <a>text track mode</a> is <a title="text track showing">showing</a> and that
+     are in the <a>media element</a>'s <a>list of text tracks</a> before <var
      title="">track</var>.</p></li>
 
      <li><p>Increment <var title="">n</var> by one.</p></li>
@@ -528,18 +537,18 @@
    <dt><dfn title="text track cue text position">A text position</dfn>
    <dd>
     <p>A number giving the position of the text of the cue within each line, to be interpreted as a
-    percentage of the video, as defined by the <span title="text track cue writing
-    direction">writing direction</span>.</p>
+    percentage of the video, as defined by the <a title="Text track cue writing
+    direction">writing direction</a>.</p>
    </dd>
 
    <dt><dfn title="text track cue size">A size</dfn>
    <dd>
     <p>A number giving the size of the box within which the text of each line of the cue is to be
-    aligned, to be interpreted as a percentage of the video, as defined by the <span title="text
-    track cue writing direction">writing direction</span>.</p>
+    aligned, to be interpreted as a percentage of the video, as defined by the <a title="Text
+    track cue writing direction">writing direction</a>.</p>
    </dd>
 
-   <dt><dfn title="text track cue alignment">An alignment</dfn>
+   <dt><dfn title="Text track cue alignment">An alignment</dfn>
    <dd>
 
     <p>An alignment for the text of each line of the cue, one of:</p>
@@ -564,28 +573,28 @@
     </dl>
 
     <p>Which sides are the start and end sides depends on the Unicode bidirectional algorithm and
-    the <span title="text track cue writing direction">writing direction</span>. <a
+    the <a title="Text track cue writing direction">writing direction</a>. <a
     href="#refsBIDI">[BIDI]</a></p>
 
    </dd>
 
   </dl>
 
-  <p>The associated <span>rules for updating the text track rendering</span> of WebVTT <span
-  title="text track cue">text track cues</span> are the <span>rules for updating the display of
-  WebVTT text tracks</span>.</p>
+  <p>The associated <a>rules for updating the text track rendering</a> of WebVTT <a
+  title="text track cue">text track cues</a> are the <a>rules for updating the display of
+  WebVTT text tracks</a>.</p>
 
   <div class="impl">
 
-  <p>When a WebVTT <span>text track cue</span> whose <span title="text track cue active flag">active
-  flag</span> is set has its <span title="text track cue writing direction">writing
-  direction</span>, <span title="text track cue snap-to-lines flag">snap-to-lines flag</span>, <span
-  title="text track cue line position">line position</span>, <span title="text track cue text
-  position">text position</span>, <span title="text track cue size">size</span>, <span title="text
-  track cue alignment">alignment</span>, or <span title="text track cue text">text</span> change
-  value, then the user agent must empty the <span>text track cue display state</span>, and then
-  immediately run the <span>text track</span>'s <span>rules for updating the display of WebVTT text
-  tracks</span>.</p>
+  <p>When a WebVTT <a>text track cue</a> whose <a title="text track cue active flag">active
+  flag</a> is set has its <a title="Text track cue writing direction">writing
+  direction</a>, <a title="text track cue snap-to-lines flag">snap-to-lines flag</a>, <a
+  title="text track cue line position">line position</a>, <a title="text track cue text
+  position">text position</a>, <a title="text track cue size">size</a>, <a title="Text
+  track cue alignment">alignment</a>, or <a title="text track cue text">text</a> change
+  value, then the user agent must empty the <a>text track cue display state</a>, and then
+  immediately run the <a>text track</a>'s <a>rules for updating the display of WebVTT text
+  tracks</a>.</p>
 
   </div>
 
@@ -597,9 +606,9 @@
   <section>
   <h3>Syntax</h3>
 
-  <p>A <dfn>WebVTT file</dfn> must consist of a <span>WebVTT file
-  body</span> encoded as UTF-8 and labeled with the <span>MIME
-  type</span> <code>text/vtt</code>. <a href="#refsRFC3629">[RFC3629]</a></p>
+  <p>A <dfn>WebVTT file</dfn> must consist of a <a>WebVTT file
+  body</a> encoded as UTF-8 and labeled with the <a>MIME
+  type</a> <code>text/vtt</code>. <a href="#refsRFC3629">[RFC3629]</a></p>
 
   <p>A <dfn>WebVTT file body</dfn> consists of the following
   components, in the following order:</p>
@@ -615,17 +624,17 @@
    characters that are not U+000A LINE FEED (LF) or U+000D CARRIAGE
    RETURN (CR) characters.</li> <!-- allows for Emacs line -->
 
-   <li>Two or more <span title="WebVTT line terminator">WebVTT line
-   terminators</span>.</li> <!-- the first one to terminate the magic
+   <li>Two or more <a title="WebVTT line terminator">WebVTT line
+   terminators</a>.</li> <!-- the first one to terminate the magic
    line, the second one to terminate the header block: in the future,
    we can add a metadata block before the first blank line -->
 
-   <li>Zero or more <span title="WebVTT cue">WebVTT cues</span> and <span title="WebVTT
-   comment">WebVTT comments</span> separated from each other by two or more <span title="WebVTT
-   line terminator">WebVTT line terminators</span>.</li>
-
-   <li>Zero or more <span title="WebVTT line terminator">WebVTT line
-   terminators</span>.</li>
+   <li>Zero or more <a title="WebVTT cue">WebVTT cues</a> and <a title="WebVTT
+   comment">WebVTT comments</a> separated from each other by two or more <a title="WebVTT
+   line terminator">WebVTT line terminators</a>.</li>
+
+   <li>Zero or more <a title="WebVTT line terminator">WebVTT line
+   terminators</a>.</li>
 
   </ol>
 
@@ -633,38 +642,38 @@
   the given order:</p>
 
   <ol>
-   <li>Optionally, a <span>WebVTT cue identifier</span> followed by a <span>WebVTT line terminator</span>.</li>
-   <li><span>WebVTT cue timings</span>.</li>
-   <li>Optionally, one or more U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characters followed by <span>WebVTT cue settings</span>.</li>
-   <li>A <span>WebVTT line terminator</span>.</li>
-   <li>The <dfn>cue payload</dfn>: either <span>WebVTT cue text</span>, <span>WebVTT chapter title text</span>, or <span>WebVTT metadata text</span>, but it must not contain the substring "<code title="">--></code>" (U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN).</li>
+   <li>Optionally, a <a>WebVTT cue identifier</a> followed by a <a>WebVTT line terminator</a>.</li>
+   <li><a>WebVTT cue timings</a>.</li>
+   <li>Optionally, one or more U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characters followed by <a>WebVTT cue settings</a>.</li>
+   <li>A <a>WebVTT line terminator</a>.</li>
+   <li>The <dfn>cue payload</dfn>: either <a>WebVTT cue text</a>, <a>WebVTT chapter title text</a>, or <a>WebVTT metadata text</a>, but it must not contain the substring "<code title="">--></code>" (U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN).</li>
   </ol>
 
-  <p class="note">A <span>WebVTT cue</span> corresponds to one piece
-  of time-aligned text or data in the <span>WebVTT file</span>, for
-  example one subtitle. The <span>cue payload</span> is the text or
+  <p class="note">A <a>WebVTT cue</a> corresponds to one piece
+  of time-aligned text or data in the <a>WebVTT file</a>, for
+  example one subtitle. The <a>cue payload</a> is the text or
   data associated with the cue.</p>
 
-  <p><span>WebVTT chapter title text</span> is syntactically a subset
-  of <span>WebVTT cue text</span>, and <span>WebVTT cue text</span> is
-  syntactically a subset of <span>WebVTT metadata text</span>.
-  Conformance checkers, when validating <span>WebVTT</span> files, may
-  offer to restrict all cues to only having <span>WebVTT chapter title
-  text</span> or <span>WebVTT cue text</span> as their <span>cue
-  payload</span>; <span>WebVTT metadata text</span> cues are only
+  <p><a>WebVTT chapter title text</a> is syntactically a subset
+  of <a>WebVTT cue text</a>, and <a>WebVTT cue text</a> is
+  syntactically a subset of <a>WebVTT metadata text</a>.
+  Conformance checkers, when validating <a>WebVTT</a> files, may
+  offer to restrict all cues to only having <a>WebVTT chapter title
+  text</a> or <a>WebVTT cue text</a> as their <a>cue
+  payload</a>; <a>WebVTT metadata text</a> cues are only
   useful for scripted applications (using the <code
-  title="dom-TextTrack-kind-metadata">metadata</code> <span>text
-  track kind</span>).</p>
-
-  <p>A <span>WebVTT file</span> whose cues all have a <span>cue
-  payload</span> that is <span>WebVTT chapter title text</span> is
+  title="dom-TextTrack-kind-metadata">metadata</code> <a>text
+  track kind</a>).</p>
+
+  <p>A <a>WebVTT file</a> whose cues all have a <a>cue
+  payload</a> that is <a>WebVTT chapter title text</a> is
   said to be a <dfn>WebVTT file using chapter title text</dfn>.</p>
 
-  <p>A <span>WebVTT file</span> whose cues all have a <span>cue
-  payload</span> that is <span>WebVTT cue text</span> is said to be a
+  <p>A <a>WebVTT file</a> whose cues all have a <a>cue
+  payload</a> that is <a>WebVTT cue text</a> is said to be a
   <dfn>WebVTT file using cue text</dfn>. By definition, any file that
-  is a <span>WebVTT file using chapter title text</span> is also a
-  <span>WebVTT file using cue text</span>.</p>
+  is a <a>WebVTT file using chapter title text</a> is also a
+  <a>WebVTT file using cue text</a>.</p>
 
 
   <p>A <dfn>WebVTT comment</dfn> consists of the  following components, in
@@ -677,17 +686,17 @@
      <li>Either:
       <ul>
        <li>A U+0020 SPACE character or U+0009 CHARACTER TABULATION (tab) character.</li>
-       <li>A <span>WebVTT line terminator</span>.</li>
+       <li>A <a>WebVTT line terminator</a>.</li>
       </ul>
      <li>Any sequence of zero or more characters other than U+000A LINE FEED (LF) characters and
      U+000D CARRIAGE RETURN (CR) characters, each optionally separated from the next by a
-     <span>WebVTT line terminator</span>, except that the entire resulting string must not contain
+     <a>WebVTT line terminator</a>, except that the entire resulting string must not contain
      the substring "<code title="">--></code>" (U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN).
     </ol>
    </li>
   </ol>
 
-  <p class="note">A <span>WebVTT comment</span> is ignored by the parser.</p>
+  <p class="note">A <a>WebVTT comment</a> is ignored by the parser.</p>
 
 
   <p>A <dfn>WebVTT line terminator</dfn> consists of one of the
@@ -705,11 +714,11 @@
   SIGN), nor containing any U+000A LINE FEED (LF) characters or U+000D
   CARRIAGE RETURN (CR) characters.</p>
 
-  <p class="note">A <span>WebVTT cue identifier</span> can be used to
+  <p class="note">A <a>WebVTT cue identifier</a> can be used to
   reference a specific cue, for example from script or CSS.</p>
 
-  <p>The <dfn>WebVTT cue timings</dfn> part of a <span>WebVTT
-  cue</span> consists of the following components, in the given
+  <p>The <dfn>WebVTT cue timings</dfn> part of a <a>WebVTT
+  cue</a> consists of the following components, in the given
   order:</p>
 
   <ol>
@@ -718,9 +727,9 @@
    the space between the arrow either optional or allow multiple
    spaces or tabs -->
 
-   <li>A <span>WebVTT timestamp</span> representing the start time
-   offset of the cue. The time represented by this <span>WebVTT
-   timestamp</span> must be greater than or equal to the start time
+   <li>A <a>WebVTT timestamp</a> representing the start time
+   offset of the cue. The time represented by this <a>WebVTT
+   timestamp</a> must be greater than or equal to the start time
    offsets of all previous cues in the file.</li>
 
    <li>One or more U+0020 SPACE characters or U+0009 CHARACTER
@@ -732,18 +741,18 @@
    <li>One or more U+0020 SPACE characters or U+0009 CHARACTER
    TABULATION (tab) characters.</li>
 
-   <li>A <span>WebVTT timestamp</span> representing the end time
-   offset of the cue. The time represented by this <span>WebVTT
-   timestamp</span> must be greater than the start time offset of the
+   <li>A <a>WebVTT timestamp</a> representing the end time
+   offset of the cue. The time represented by this <a>WebVTT
+   timestamp</a> must be greater than the start time offset of the
    cue.</li>
 
   </ol>
 
-  <p class="note">The <span>WebVTT cue timings</span> give the start
-  and end offsets of the <span>WebVTT cue</span>. Different cues can
+  <p class="note">The <a>WebVTT cue timings</a> give the start
+  and end offsets of the <a>WebVTT cue</a>. Different cues can
   overlap. Cues are always listed ordered by their start time.</p>
 
-  <p>A <span>WebVTT file</span> whose cues all have an end time offset
+  <p>A <a>WebVTT file</a> whose cues all have an end time offset
   <var title="">x</var> greater than or equal to the end time offsets
   of all the cues whose start time offsets are less than <var
   title="">x</var> is said to be a <dfn>WebVTT file using only nested
@@ -796,8 +805,8 @@
    </ul>
 
    <p>If the file has cues that can't be expressed in this fashion,
-   then they don't match the definition of a <span>WebVTT file using
-   only nested cues</span>. For example:</p>
+   then they don't match the definition of a <a>WebVTT file using
+   only nested cues</a>. For example:</p>
 
   <pre>WEBVTT
 
@@ -809,13 +818,13 @@
 
    <p>In this ninety-second example, the two cues partly overlap, with
    the first ending before the second ends and the second starting
-   before the first ends. This therefore is not a <span>WebVTT file
-   using only nested cues</span>.</p>
+   before the first ends. This therefore is not a <a>WebVTT file
+   using only nested cues</a>.</p>
 
   </div>
 
   <p>A <dfn>WebVTT timestamp</dfn> representing a time in seconds and
-  fractions of a second is a <span>WebVTT timestamp</span>
+  fractions of a second is a <a>WebVTT timestamp</a>
   representing hours <var
   title="">hours</var>, minutes <var title="">minutes</var>, seconds
   <var title="">seconds</var>, and thousandths of a second <var
@@ -846,7 +855,7 @@
 
   </ol>
 
-  <p>A <span>WebVTT timestamp</span> representing hours <var
+  <p>A <a>WebVTT timestamp</a> representing hours <var
   title="">hours</var>, minutes <var title="">minutes</var>, seconds
   <var title="">seconds</var>, and thousandths of a second <var
   title="">seconds-frac</var>, consists of the following components,
@@ -858,7 +867,7 @@
 
     <ol>
 
-     <li>Two or more <span>ASCII digits</span>, representing the <var title="">hours</var> as a base
+     <li>Two or more <a>ASCII digits</a>, representing the <var title="">hours</var> as a base
      ten integer.</li>
 
      <li>A U+003A COLON character (:)</li>
@@ -867,37 +876,37 @@
 
    </li>
 
-   <li>Two <span>ASCII digits</span>, representing the <var title="">minutes</var> as a base ten
+   <li>Two <a>ASCII digits</a>, representing the <var title="">minutes</var> as a base ten
    integer in the range 0&nbsp;&le;&nbsp;<var title="">minutes</var>&nbsp;&le;&nbsp;59.</li>
 
    <li>A U+003A COLON character (:)</li>
 
-   <li>Two <span>ASCII digits</span>, representing the <var title="">seconds</var> as a base ten
+   <li>Two <a>ASCII digits</a>, representing the <var title="">seconds</var> as a base ten
    integer in the range 0&nbsp;&le;&nbsp;<var title="">seconds</var>&nbsp;&le;&nbsp;59.</li>
 
    <li>A U+002E FULL STOP character (.).</li>
 
-   <li>Three <span>ASCII digits</span>, representing the thousandths of a second <var
+   <li>Three <a>ASCII digits</a>, representing the thousandths of a second <var
    title="">seconds-frac</var> as a base ten integer.</li>
 
   </ol>
 
-  <p>The <dfn>WebVTT cue settings</dfn> part of a <span>WebVTT
-  cue</span> consists of zero or more of the following components, in
+  <p>The <dfn>WebVTT cue settings</dfn> part of a <a>WebVTT
+  cue</a> consists of zero or more of the following components, in
   any order, separated from each other by one or more U+0020 SPACE
   characters or U+0009 CHARACTER TABULATION (tab) characters. Each
-  component must not be included more than once per <span>WebVTT cue
-  settings</span> string.</p>
+  component must not be included more than once per <a>WebVTT cue
+  settings</a> string.</p>
 
   <ul class="brief"> 
-   <li>A <span>WebVTT vertical text cue setting</span>.</li> <!-- vertical:rl/lr -->
-   <li>A <span>WebVTT line position cue setting</span>.</li> <!-- line:100% line:1 line:-1 -->
-   <li>A <span>WebVTT text position cue setting</span>.</li> <!-- position:100% -->
-   <li>A <span>WebVTT size cue setting</span>.</li>          <!-- size:100% -->
-   <li>A <span>WebVTT alignment cue setting</span>.</li>     <!-- align:start/middle/end/left/right -->
+   <li>A <a>WebVTT vertical text cue setting</a>.</li> <!-- vertical:rl/lr -->
+   <li>A <a>WebVTT line position cue setting</a>.</li> <!-- line:100% line:1 line:-1 -->
+   <li>A <a>WebVTT text position cue setting</a>.</li> <!-- position:100% -->
+   <li>A <a>WebVTT size cue setting</a>.</li>          <!-- size:100% -->
+   <li>A <a>WebVTT alignment cue setting</a>.</li>     <!-- align:start/middle/end/left/right -->
   </ul>
 
-  <p class="note"><span>WebVTT cue settings</span> give configuration
+  <p class="note"><a>WebVTT cue settings</a> give configuration
   options regarding the position and alignment of the cue. For
   example, it allows a cue to be aligned to the left or positioned at
   the top right.</p>
@@ -911,7 +920,7 @@
    <li>One of the following strings: "<code title="">rl</code>", "<code title="">lr</code>".</li>
   </ol>
 
-  <p class="note">A <span>WebVTT vertical text cue setting</span>
+  <p class="note">A <a>WebVTT vertical text cue setting</a>
   configures the cue to use vertical text layout rather than
   horizontal text layout. Vertical text layout is sometimes used in
   Japanese, for example. The default is horizontal layout.</p>
@@ -927,7 +936,7 @@
      <dt>To represent a specific position relative to the video frame</dt>
      <dd>
       <ol>
-       <li>One or more <span>ASCII digits</span>.</li>
+       <li>One or more <a>ASCII digits</a>.</li>
        <li>A U+0025 PERCENT SIGN character (%).</li>
       </ol>
      </dd>
@@ -935,14 +944,14 @@
      <dd>
       <ol>
        <li>Optionally a U+002D HYPHEN-MINUS character (-).</li>
-       <li>One or more <span>ASCII digits</span>.</li>
+       <li>One or more <a>ASCII digits</a>.</li>
       </ol>
      </dd>
     </dl>
    </li>
   </ol>
 
-  <p class="note">A <span>WebVTT line position cue setting</span>
+  <p class="note">A <a>WebVTT line position cue setting</a>
   configures the position of the cue. For horizontal cues, this is the
   vertical position. The position can be given either as a percentage,
   which gives the distance from the top of the frame, or as a line
@@ -957,15 +966,15 @@
   <ol>
    <li><p>The string "<code title="">position</code>".</p></li>
    <li>A U+003A COLON character (:).</li>
-   <li>One or more <span>ASCII digits</span>.</li>
+   <li>One or more <a>ASCII digits</a>.</li>
    <li>A U+0025 PERCENT SIGN character (%).</li>
   </ol>
 
-  <p class="note">A <span>WebVTT text position cue setting</span>
+  <p class="note">A <a>WebVTT text position cue setting</a>
   configures the position of the text in the direction orthogonal to
-  the <span>WebVTT line position cue setting</span>. For horizontal
-  cues, this is the horizontal position. The <span>WebVTT text
-  position cue setting</span> is given as a percentage, calculated
+  the <a>WebVTT line position cue setting</a>. For horizontal
+  cues, this is the horizontal position. The <a>WebVTT text
+  position cue setting</a> is given as a percentage, calculated
   from the edge of the frame that the text begins (so for
   left-to-right English text, the left edge).</p>
 
@@ -975,13 +984,13 @@
   <ol>
    <li><p>The string "<code title="">size</code>".</p></li>
    <li>A U+003A COLON character (:).</li>
-   <li>One or more <span>ASCII digits</span>.</li>
+   <li>One or more <a>ASCII digits</a>.</li>
    <li>A U+0025 PERCENT SIGN character (%).</li>
   </ol>
 
-  <p class="note">A <span>WebVTT size cue setting</span> configures
-  the size of the cue in the same direction as the <span>WebVTT text
-  position cue setting</span>. For horizontal cues, this is the width
+  <p class="note">A <a>WebVTT size cue setting</a> configures
+  the size of the cue in the same direction as the <a>WebVTT text
+  position cue setting</a>. For horizontal cues, this is the width
   of the cue. It is given as a percentage of the width of the
   frame.</p>
 
@@ -994,7 +1003,7 @@
    <li>One of the following strings: "<code title="">start</code>", "<code title="">middle</code>", "<code title="">end</code>", "<code title="">left</code>", "<code title="">right</code>"</li>
   </ol>
 
-  <p class="note">A <span>WebVTT alignment cue setting</span>
+  <p class="note">A <a>WebVTT alignment cue setting</a>
   configures the alignment of the text within the cue. The keywords
   are relative to the text direction; for left-to-right English text,
   "<code title="">start</code>" means left-aligned.</p>
@@ -1003,124 +1012,124 @@
   <p><dfn>WebVTT metadata text</dfn> consists of any sequence of zero
   or more characters other than U+000A LINE FEED (LF) characters and
   U+000D CARRIAGE RETURN (CR) characters, each optionally separated
-  from the next by a <span>WebVTT line terminator</span>. (In other
-  words, any text that does not have two consecutive <span
-  title="WebVTT line terminator">WebVTT line terminators</span> and
-  does not start or end with a <span>WebVTT line
-  terminator</span>.)</p>
+  from the next by a <a>WebVTT line terminator</a>. (In other
+  words, any text that does not have two consecutive <a
+  title="WebVTT line terminator">WebVTT line terminators</a> and
+  does not start or end with a <a>WebVTT line
+  terminator</a>.)</p>
 
 
   <p><dfn>WebVTT chapter title text</dfn> consists of zero or more of
   the following, each optionally separated from the next by a
-  <span>WebVTT line terminator</span>:</p>
+  <a>WebVTT line terminator</a>:</p>
 
   <ul>
-   <li>A <span>WebVTT cue text span</span>, representing the text of the cue.</li>
-   <li>A <span>WebVTT cue amp escape</span>, representing a "&amp;" character in the text of the cue.</li>
-   <li>A <span>WebVTT cue lt escape</span>, representing a "&lt;" character in the text of the cue.</li>
-   <li>A <span>WebVTT cue gt escape</span>, representing a "&gt;" character in the text of the cue.</li>
-   <li>A <span>WebVTT cue lrm escape</span>, representing a U+200E LEFT-TO-RIGHT MARK Unicode bidirectional formatting character in the text of the cue.</li>
-   <li>A <span>WebVTT cue rlm escape</span>, representing a U+200F RIGHT-TO-LEFT MARK Unicode bidirectional formatting character in the text of the cue.</li>
-   <li>A <span>WebVTT cue nbsp escape</span>, representing a U+00A0 NO-BREAK SPACE character in the text of the cue.</li>
+   <li>A <a>WebVTT cue text span</a>, representing the text of the cue.</li>
+   <li>A <a>WebVTT cue amp escape</a>, representing a "&amp;" character in the text of the cue.</li>
+   <li>A <a>WebVTT cue lt escape</a>, representing a "&lt;" character in the text of the cue.</li>
+   <li>A <a>WebVTT cue gt escape</a>, representing a "&gt;" character in the text of the cue.</li>
+   <li>A <a>WebVTT cue lrm escape</a>, representing a U+200E LEFT-TO-RIGHT MARK Unicode bidirectional formatting character in the text of the cue.</li>
+   <li>A <a>WebVTT cue rlm escape</a>, representing a U+200F RIGHT-TO-LEFT MARK Unicode bidirectional formatting character in the text of the cue.</li>
+   <li>A <a>WebVTT cue nbsp escape</a>, representing a U+00A0 NO-BREAK SPACE character in the text of the cue.</li>
   </ul>
 
 
-  <p><dfn>WebVTT cue text</dfn> consists of zero or more <span>WebVTT
-  cue components</span>, in any order, each optionally separated from
-  the next by a <span>WebVTT line terminator</span>.</p>
+  <p><dfn>WebVTT cue text</dfn> consists of zero or more <a>WebVTT
+  cue components</a>, in any order, each optionally separated from
+  the next by a <a>WebVTT line terminator</a>.</p>
 
   <p>The <dfn>WebVTT cue components</dfn> are:</p>
 
   <ul>
 
-   <li>A <span>WebVTT cue class span</span>.</li>
-   <li>A <span>WebVTT cue italics span</span>.</li>
-   <li>A <span>WebVTT cue bold span</span>.</li>
-   <li>A <span>WebVTT cue underline span</span>.</li>
-   <li>A <span>WebVTT cue ruby span</span>.</li>
-   <li>A <span>WebVTT cue voice span</span>.</li>
-   <li>A <span>WebVTT cue language span</span>.</li>
-
-   <li>A <span>WebVTT cue timestamp</span>.</li>
-
-   <li>A <span>WebVTT cue text span</span>, representing the text of the cue.</li>
-
-   <li>A <span>WebVTT cue amp escape</span>, representing a "&amp;" character in the text of the cue.</li>
-   <li>A <span>WebVTT cue lt escape</span>, representing a "&lt;" character in the text of the cue.</li>
-   <li>A <span>WebVTT cue gt escape</span>, representing a "&gt;" character in the text of the cue.</li>
-   <li>A <span>WebVTT cue lrm escape</span>, representing a U+200E LEFT-TO-RIGHT MARK Unicode bidirectional formatting character in the text of the cue.</li>
-   <li>A <span>WebVTT cue rlm escape</span>, representing a U+200F RIGHT-TO-LEFT MARK Unicode bidirectional formatting character in the text of the cue.</li>
-   <li>A <span>WebVTT cue nbsp escape</span>, representing a U+00A0 NO-BREAK SPACE character in the text of the cue.</li>
+   <li>A <a>WebVTT cue class span</a>.</li>
+   <li>A <a>WebVTT cue italics span</a>.</li>
+   <li>A <a>WebVTT cue bold span</a>.</li>
+   <li>A <a>WebVTT cue underline span</a>.</li>
+   <li>A <a>WebVTT cue ruby span</a>.</li>
+   <li>A <a>WebVTT cue voice span</a>.</li>
+   <li>A <a>WebVTT cue language span</a>.</li>
+
+   <li>A <a>WebVTT cue timestamp</a>.</li>
+
+   <li>A <a>WebVTT cue text span</a>, representing the text of the cue.</li>
+
+   <li>A <a>WebVTT cue amp escape</a>, representing a "&amp;" character in the text of the cue.</li>
+   <li>A <a>WebVTT cue lt escape</a>, representing a "&lt;" character in the text of the cue.</li>
+   <li>A <a>WebVTT cue gt escape</a>, representing a "&gt;" character in the text of the cue.</li>
+   <li>A <a>WebVTT cue lrm escape</a>, representing a U+200E LEFT-TO-RIGHT MARK Unicode bidirectional formatting character in the text of the cue.</li>
+   <li>A <a>WebVTT cue rlm escape</a>, representing a U+200F RIGHT-TO-LEFT MARK Unicode bidirectional formatting character in the text of the cue.</li>
+   <li>A <a>WebVTT cue nbsp escape</a>, representing a U+00A0 NO-BREAK SPACE character in the text of the cue.</li>
 
   </ul>
 
   <p><dfn>WebVTT cue internal text</dfn> consists of an optional
-  <span>WebVTT line terminator</span>, followed by zero or more
-  <span>WebVTT cue components</span>, in any order, each optionally
-  followed by a <span>WebVTT line terminator</span>.</p>
-
-
-  <p>A <dfn>WebVTT cue class span</dfn> consists of a <span>WebVTT cue
-  span start tag</span> "<code title="">c</code>" that disallows an
-  annotation, <span>WebVTT cue internal text</span> representing cue
-  text, and a <span>WebVTT cue span end tag</span> "<code
+  <a>WebVTT line terminator</a>, followed by zero or more
+  <a>WebVTT cue components</a>, in any order, each optionally
+  followed by a <a>WebVTT line terminator</a>.</p>
+
+
+  <p>A <dfn>WebVTT cue class span</dfn> consists of a <a>WebVTT cue
+  span start tag</a> "<code title="">c</code>" that disallows an
+  annotation, <a>WebVTT cue internal text</a> representing cue
+  text, and a <a>WebVTT cue span end tag</a> "<code
   title="">c</code>".</p>
 
-  <p>A <dfn>WebVTT cue italics span</dfn> consists of a <span>WebVTT
-  cue span start tag</span> "<code title="">i</code>" that disallows
-  an annotation, <span>WebVTT cue internal text</span> representing
-  the italicized text, and a <span>WebVTT cue span end tag</span>
+  <p>A <dfn>WebVTT cue italics span</dfn> consists of a <a>WebVTT
+  cue span start tag</a> "<code title="">i</code>" that disallows
+  an annotation, <a>WebVTT cue internal text</a> representing
+  the italicized text, and a <a>WebVTT cue span end tag</a>
   "<code title="">i</code>".</p>
 
-  <p>A <dfn>WebVTT cue bold span</dfn> consists of a <span>WebVTT cue
-  span start tag</span> "<code title="">b</code>" that disallows an
-  annotation, <span>WebVTT cue internal text</span> representing the
-  boldened text, and a <span>WebVTT cue span end tag</span> "<code
+  <p>A <dfn>WebVTT cue bold span</dfn> consists of a <a>WebVTT cue
+  span start tag</a> "<code title="">b</code>" that disallows an
+  annotation, <a>WebVTT cue internal text</a> representing the
+  boldened text, and a <a>WebVTT cue span end tag</a> "<code
   title="">b</code>".</p>
 
-  <p>A <dfn>WebVTT cue underline span</dfn> consists of a <span>WebVTT
-  cue span start tag</span> "<code title="">u</code>" that disallows
-  an annotation, <span>WebVTT cue internal text</span> representing
-  the underlined text, and a <span>WebVTT cue span end tag</span>
+  <p>A <dfn>WebVTT cue underline span</dfn> consists of a <a>WebVTT
+  cue span start tag</a> "<code title="">u</code>" that disallows
+  an annotation, <a>WebVTT cue internal text</a> representing
+  the underlined text, and a <a>WebVTT cue span end tag</a>
   "<code title="">u</code>".</p>
 
   <p>A <dfn>WebVTT cue ruby span</dfn> consists of the following
   components, in the order given:</p>
 
   <ol>
-   <li>A <span>WebVTT cue span start tag</span> "<code title="">ruby</code>" that disallows an annotation.</li>
+   <li>A <a>WebVTT cue span start tag</a> "<code title="">ruby</code>" that disallows an annotation.</li>
    <li>One or more occurrences of the following group of components, in the order given:
     <ol>
-     <li><span>WebVTT cue internal text</span>, representing the ruby base.</li>
-     <li>A <span>WebVTT cue span start tag</span> "<code title="">rt</code>" that disallows an annotation.</li>
-     <li>A <dfn>WebVTT cue ruby text span</dfn>: <span>WebVTT cue internal text</span>, representing the ruby text component of the ruby annotation.</li>
-     <li>A <span>WebVTT cue span end tag</span> "<code title="">rt</code>".
+     <li><a>WebVTT cue internal text</a>, representing the ruby base.</li>
+     <li>A <a>WebVTT cue span start tag</a> "<code title="">rt</code>" that disallows an annotation.</li>
+     <li>A <dfn>WebVTT cue ruby text span</dfn>: <a>WebVTT cue internal text</a>, representing the ruby text component of the ruby annotation.</li>
+     <li>A <a>WebVTT cue span end tag</a> "<code title="">rt</code>".
      If this is the last occurrence of this group of components in the
-     <span>WebVTT cue ruby span</span>, then this last end tag string
+     <a>WebVTT cue ruby span</a>, then this last end tag string
      may be omitted.</li>
     </ol>
    </li>
-   <li>If the last end tag string was not omitted: Optionally, a <span>WebVTT line terminator</span>.</li>
-   <li>If the last end tag string was not omitted: Zero or more U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characters, each optionally followed by a <span>WebVTT line terminator</span>.</li>
-   <li>A <span>WebVTT cue span end tag</span> "<code title="">ruby</code>".</li>
+   <li>If the last end tag string was not omitted: Optionally, a <a>WebVTT line terminator</a>.</li>
+   <li>If the last end tag string was not omitted: Zero or more U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characters, each optionally followed by a <a>WebVTT line terminator</a>.</li>
+   <li>A <a>WebVTT cue span end tag</a> "<code title="">ruby</code>".</li>
   </ol>
 
   <p>A <dfn>WebVTT cue voice span</dfn> consists of the following
   components, in the order given:</p>
 
   <ol>
-   <li>A <span>WebVTT cue span start tag</span> "<code title="">v</code>" that requires an annotation; the annotation represents the name of the voice.</li>
-   <li><span>WebVTT cue internal text</span>.</li>
-   <li>A <span>WebVTT cue span end tag</span> "<code title="">v</code>". If this <span>WebVTT cue voice span</span> is the only <span title="WebVTT cue components">component</span> of its <span>WebVTT cue text</span> sequence, then the end tag may be omitted for brevity.</li>
+   <li>A <a>WebVTT cue span start tag</a> "<code title="">v</code>" that requires an annotation; the annotation represents the name of the voice.</li>
+   <li><a>WebVTT cue internal text</a>.</li>
+   <li>A <a>WebVTT cue span end tag</a> "<code title="">v</code>". If this <a>WebVTT cue voice span</a> is the only <a title="WebVTT cue components">component</a> of its <a>WebVTT cue text</a> sequence, then the end tag may be omitted for brevity.</li>
   </ol>
 
   <p>A <dfn>WebVTT cue language span</dfn> consists of the following
   components, in the order given:</p>
 
   <ol>
-   <li>A <span>WebVTT cue span start tag</span> "<code title="">lang</code>" that requires an annotation; the annotation represents the language of the following component, and must be a valid BCP 47 language tag. <a href="#refsBCP47">[BCP47]</a></li>
-   <li><span>WebVTT cue internal text</span>.</li>
-   <li>A <span>WebVTT cue span end tag</span> "<code title="">lang</code>".</li>
+   <li>A <a>WebVTT cue span start tag</a> "<code title="">lang</code>" that requires an annotation; the annotation represents the language of the following component, and must be a valid BCP 47 language tag. <a href="#refsBCP47">[BCP47]</a></li>
+   <li><a>WebVTT cue internal text</a>.</li>
+   <li>A <a>WebVTT cue span end tag</a> "<code title="">lang</code>".</li>
   </ol>
 
 
@@ -1159,11 +1168,11 @@
 
      <dt>If the start tag allows an annotation:</dt>
 
-     <dd>Optionally, a <span>WebVTT cue span start tag annotation</span>.</dd>
+     <dd>Optionally, a <a>WebVTT cue span start tag annotation</a>.</dd>
 
      <dt>-->If the start tag requires an annotation:<!--</dt>
 
-     <dd>A <span>WebVTT cue span start tag annotation</span>.</dd>
+     <dd>A <a>WebVTT cue span start tag annotation</a>.</dd>
 
     </dl>
 
@@ -1175,13 +1184,13 @@
     CHARACTER TABULATION (tab) characters:<!--</p>-->
 
     <ul>
-     <li><span>WebVTT cue span start tag annotation text</span>, representing the text of the annotation.</li>
-     <li>A <span>WebVTT cue amp escape</span>, representing a "&amp;" character in the text of the annotation.</li>
-     <li>A <span>WebVTT cue lt escape</span>, representing a "&lt;" character in the text of the annotation.</li>
-     <li>A <span>WebVTT cue gt escape</span>, representing a "&gt;" character in the text of the annotation.</li>
-     <li>A <span>WebVTT cue lrm escape</span>, representing a U+200E LEFT-TO-RIGHT MARK Unicode bidirectional formatting character in the text of the cue.</li>
-     <li>A <span>WebVTT cue rlm escape</span>, representing a U+200F RIGHT-TO-LEFT MARK Unicode bidirectional formatting character in the text of the cue.</li>
-     <li>A <span>WebVTT cue nbsp escape</span>, representing a U+00A0 NO-BREAK SPACE character in the text of the cue.</li>
+     <li><a>WebVTT cue span start tag annotation text</a>, representing the text of the annotation.</li>
+     <li>A <a>WebVTT cue amp escape</a>, representing a "&amp;" character in the text of the annotation.</li>
+     <li>A <a>WebVTT cue lt escape</a>, representing a "&lt;" character in the text of the annotation.</li>
+     <li>A <a>WebVTT cue gt escape</a>, representing a "&gt;" character in the text of the annotation.</li>
+     <li>A <a>WebVTT cue lrm escape</a>, representing a U+200E LEFT-TO-RIGHT MARK Unicode bidirectional formatting character in the text of the cue.</li>
+     <li>A <a>WebVTT cue rlm escape</a>, representing a U+200F RIGHT-TO-LEFT MARK Unicode bidirectional formatting character in the text of the cue.</li>
+     <li>A <a>WebVTT cue nbsp escape</a>, representing a U+00A0 NO-BREAK SPACE character in the text of the cue.</li>
     </ul>
 
    </li>
@@ -1203,12 +1212,12 @@
 
 
   <p>A <dfn>WebVTT cue timestamp</dfn> consists of a U+003C LESS-THAN
-  SIGN character (&lt;), followed by a <span>WebVTT timestamp</span>
+  SIGN character (&lt;), followed by a <a>WebVTT timestamp</a>
   representing the time that the given point in the cue becomes
   active, followed by a U+003E GREATER-THAN SIGN character (>). The
-  time represented by the <span>WebVTT timestamp</span> must be
-  greater than the times represented by any previous <span
-  title="WebVTT cue timestamp">WebVTT cue timestamps</span> in the
+  time represented by the <a>WebVTT timestamp</a> must be
+  greater than the times represented by any previous <a
+  title="WebVTT cue timestamp">WebVTT cue timestamps</a> in the
   cue, as well as greater than the cue's start time offset, and less
   than the cue's end time offset.</p>
 
@@ -1248,20 +1257,20 @@
   <h3>Parsing</h3>
 
   <p>A <dfn>WebVTT parser</dfn>, given an input byte stream and a
-  <span>text track list of cues</span> <var title="">output</var>,
-  must <span title="decoded as UTF-8, with error handling">decode the
-  byte stream as UTF-8, with error handling</span>, and then must
-  parse the resulting string according to the <span>WebVTT parser
-  algorithm</span> below. This results in <span title="text track
-  cue">text track cues</span> being added to <var
+  <a>text track list of cues</a> <var title="">output</var>,
+  must <a title="decoded as UTF-8, with error handling">decode the
+  byte stream as UTF-8, with error handling</a>, and then must
+  parse the resulting string according to the <a>WebVTT parser
+  algorithm</a> below. This results in <a title="text track
+  cue">text track cues</a> being added to <var
   title="">output</var>. <a href="#refsRFC3629">[RFC3629]</a></p>
 
-  <p>A <span>WebVTT parser</span>, specifically its conversion and
+  <p>A <a>WebVTT parser</a>, specifically its conversion and
   parsing steps, is typically run asynchronously, with the input byte
   stream being updated incrementally as the resource is downloaded;
   this is called an <dfn>incremental WebVTT parser</dfn>.</p>
 
-  <p>A <span>WebVTT parser</span> verifies a file signature before
+  <p>A <a>WebVTT parser</a> verifies a file signature before
   parsing the provided byte stream. If the stream lacks this WebVTT
   file signature, then the parser aborts.</p>
 
@@ -1293,7 +1302,7 @@
 
    <li><p>Let <var title="">position</var> be a pointer into <var
    title="">input</var>, initially pointing at the start of the
-   string. In an <span>incremental WebVTT parser</span>, when this
+   string. In an <a>incremental WebVTT parser</a>, when this
    algorithm (or further algorithms that it uses) moves the <var
    title="">position</var> pointer, the user agent must wait until
    appropriate further characters from the byte stream have been added
@@ -1317,19 +1326,19 @@
 
    <!-- SIGNATURE CHECK -->
 
-   <li><p><span>Collect a sequence of characters</span> that are
+   <li><p><a>Collect a sequence of characters</a> that are
    <em>not</em> U+000A LINE FEED (LF) characters. Let <var
    title="">line</var> be those characters, if any.</p></li>
 
    <li><p>If <var title="">line</var> is less than six characters
    long, then abort these steps. The file does not start with the
-   correct <span>WebVTT file</span> signature and was therefore not
+   correct <a>WebVTT file</a> signature and was therefore not
    successfully processed.</p></li>
 
    <li><p>If <var title="">line</var> is exactly six characters long
    but does not exactly equal "<code title="">WEBVTT</code>", then
    abort these steps. The file does not start with the correct
-   <span>WebVTT file</span> signature and was therefore not
+   <a>WebVTT file</a> signature and was therefore not
    successfully processed.</p></li>
 
    <li><p>If <var title="">line</var> is more than six characters long
@@ -1337,13 +1346,13 @@
    title="">WEBVTT</code>", or the seventh character is neither a
    U+0020 SPACE character nor a U+0009 CHARACTER TABULATION (tab)
    character, then abort these steps. The file does not start with the
-   correct <span>WebVTT file</span> signature and was therefore not
+   correct <a>WebVTT file</a> signature and was therefore not
    successfully processed.</p></li>
 
    <li><p>If <var title="">position</var> is past the end of <var
    title="">input</var>, then abort these steps. The file was
    successfully processed, but it contains no useful data and so no
-   <span title="text track cue">text track cues</span> where added to
+   <a title="text track cue">text track cues</a> where added to
    <var title="">output</var>.</p></li>
 
 
@@ -1353,8 +1362,8 @@
    title="">input</var>.</p></li>
 
 
-   <li><p><i title="">Header</i>: <span>Collect a sequence of
-   characters</span> that are <em>not</em> U+000A LINE FEED (LF)
+   <li><p><i title="">Header</i>: <a>Collect a sequence of
+   characters</a> that are <em>not</em> U+000A LINE FEED (LF)
    characters. Let <var title="">line</var> be those characters, if
    any.</p></li>
 
@@ -1383,10 +1392,10 @@
    line</var> flag is set, then jump to the step labeled <var
    title="">cue creation</var>.</p></li>
 
-   <li><p><span>Collect a sequence of characters</span> that are
+   <li><p><a>Collect a sequence of characters</a> that are
    U+000A LINE FEED (LF) characters.</p></li>
 
-   <li><p><span>Collect a sequence of characters</span> that are
+   <li><p><a>Collect a sequence of characters</a> that are
    <em>not</em> U+000A LINE FEED (LF) characters. Let <var
    title="">line</var> be those characters, if any.</p></li>
 
@@ -1399,45 +1408,45 @@
    -->.)</p></li>
 
    <li><p><i>Cue creation</i>: Let <var title="">cue</var> be a new
-   <span>text track cue</span>.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   identifier</span> be the empty string.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   pause-on-exit flag</span> be false.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   writing direction</span> be <span title="text track cue
-   horizontal writing direction">horizontal</span>.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   snap-to-lines flag</span> be true.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue line
-   position</span> be <span title="text track cue automatic line
-   position">auto</span>.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   text position</span> be 50.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   size</span> be 100.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   alignment</span> be <span title="text track cue middle
-   alignment">middle alignment</span>.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   text</span> be the empty string.</p></li>
+   <a>text track cue</a>.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   identifier</a> be the empty string.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   pause-on-exit flag</a> be false.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>Text track cue
+   writing direction</a> be <a title="text track cue
+   horizontal writing direction">horizontal</a>.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   snap-to-lines flag</a> be true.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue line
+   position</a> be <a title="text track cue automatic line
+   position">auto</a>.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   text position</a> be 50.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   size</a> be 100.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>Text track cue
+   alignment</a> be <a title="text track cue middle
+   alignment">middle alignment</a>.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   text</a> be the empty string.</p></li>
 
    <li><p>If <var title="">line</var> contains the three-character
    substring "<code title="">--></code>" (U+002D HYPHEN-MINUS, U+002D
    HYPHEN-MINUS, U+003E GREATER-THAN SIGN), then jump to the step
    labeled <i>timings</i> below.</p></li>
 
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   identifier</span> be <var title="">line</var>.<p></li>
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   identifier</a> be <var title="">line</var>.<p></li>
 
    <li><p>If <var title="">position</var> is past the end of <var
    title="">input</var>, then discard <var title="">cue</var> and jump
@@ -1448,7 +1457,7 @@
    title="">position</var> to the next character in <var
    title="">input</var>.</p></li>
 
-   <li><p><span>Collect a sequence of characters</span> that are
+   <li><p><a>Collect a sequence of characters</a> that are
    <em>not</em> U+000A LINE FEED (LF) characters. Let <var
    title="">line</var> be those characters, if any.</p></li>
 
@@ -1459,7 +1468,7 @@
    <li><p><i>Timings</i>: Unset the <var title="">already collected
    line</var> flag.</p></li>
 
-   <li><p><span>Collect WebVTT cue timings and settings</span> from
+   <li><p><a>Collect WebVTT cue timings and settings</a> from
    <var title="">line</var>, using <var title="">cue</var> for the
    results. If that fails, jump to the step labeled <i>bad
    cue</i>.</p></li>
@@ -1476,7 +1485,7 @@
    title="">position</var> to the next character in <var
    title="">input</var>.</p></li>
 
-   <li><p><span>Collect a sequence of characters</span> that are
+   <li><p><a>Collect a sequence of characters</a> that are
    <em>not</em> U+000A LINE FEED (LF) characters. Let <var
    title="">line</var> be those characters, if any.</p></li>
 
@@ -1498,12 +1507,12 @@
 
    <li><p>Return to the step labeled <i>cue text loop</i>.</p></li>
 
-   <li><p><i>Cue text processing</i>: Let the <span>text track cue text</span> of <var
-   title="">cue</var> be <var title="">cue text</var>, and let the <span>rules for rendering the cue
-   in isolation</span> be the <span>rules for interpreting WebVTT cue text</span>.</p></li>
-
-   <li><p>Add <var title="">cue</var> to the <span>text track list of
-   cues</span> <var title="">output</var>.</p></li>
+   <li><p><i>Cue text processing</i>: Let the <a>text track cue text</a> of <var
+   title="">cue</var> be <var title="">cue text</var>, and let the <a>rules for rendering the cue
+   in isolation</a> be the <a>rules for interpreting WebVTT cue text</a>.</p></li>
+
+   <li><p>Add <var title="">cue</var> to the <a>text track list of
+   cues</a> <var title="">output</var>.</p></li>
 
    <li><p>Jump to the step labeled <i>cue loop</i>.</p></li>
 
@@ -1519,7 +1528,7 @@
    title="">position</var> to the next character in <var
    title="">input</var>.</p></li>
 
-   <li><p><span>Collect a sequence of characters</span> that are
+   <li><p><a>Collect a sequence of characters</a> that are
    <em>not</em> U+000A LINE FEED (LF) characters. Let <var
    title="">line</var> be those characters, if any.</p></li>
 
@@ -1537,14 +1546,14 @@
 
 
    <li><p><i>End</i>: The file has ended. Abort these steps. The
-   <span>WebVTT parser</span> has finished. The file was successfully
+   <a>WebVTT parser</a> has finished. The file was successfully
    processed.</p></li>
 
   </ol>
 
   <p>When the algorithm above requires that the user agent
-  <dfn>collect WebVTT cue timings and settings</dfn> from a string
-  <var title="">input</var> for a <span>text track cue</span> <var
+  <dfn>Collect WebVTT cue timings and settings</dfn> from a string
+  <var title="">input</var> for a <a>text track cue</a> <var
   title="">cue</var>, the user agent must run the following
   algorithm.</p>
 
@@ -1557,14 +1566,14 @@
    title="">input</var>, initially pointing at the start of the
    string.</p></li>
 
-   <li><p><span>Skip whitespace</span>.</p></li>
-
-   <li><p><span>Collect a WebVTT timestamp</span>. If that algorithm
+   <li><p><a>Skip whitespace</a>.</p></li>
+
+   <li><p><a>Collect a WebVTT timestamp</a>. If that algorithm
    fails, then abort these steps and return failure. Otherwise, let
-   <var title="">cue</var>'s <span>text track cue start time</span>
+   <var title="">cue</var>'s <a>text track cue start time</a>
    be the collected time.</p></li>
 
-   <li><p><span>Skip whitespace</span>.</p></li>
+   <li><p><a>Skip whitespace</a>.</p></li>
 
    <!-- we can't be beyond the end of the string until we've seen the
    arrow, since we know the arrow is in the string and nothing we've
@@ -1588,32 +1597,32 @@
    (>) then abort these steps and return failure. Otherwise, move <var
    title="">position</var> forwards one character.</p></li>
 
-   <li><p><span>Skip whitespace</span>.</p></li>
-
-   <li><p><span>Collect a WebVTT timestamp</span>. If that algorithm
+   <li><p><a>Skip whitespace</a>.</p></li>
+
+   <li><p><a>Collect a WebVTT timestamp</a>. If that algorithm
    fails, then abort these steps and return failure. Otherwise, let
-   <var title="">cue</var>'s <span>text track cue end time</span>
+   <var title="">cue</var>'s <a>text track cue end time</a>
    be the collected time.</p></li>
 
    <li><p>Let <var title="">remainder</var> be the trailing substring
    of <var title="">input</var> starting at <var
    title="">position</var>.</p></li>
 
-   <li><p><span>Parse the WebVTT settings</span> given by <var
+   <li><p><a>Parse the WebVTT settings</a> given by <var
    title="">remainder</var> for <var title="">cue</var>.</p></li>
 
   </ol>
 
-  <p>When the user agent is to <dfn>parse the WebVTT settings</dfn>
-  given by a string <var title="">input</var> for a <span>text track
-  cue</span> <var title="">cue</var>, the user agent must run the
+  <p>When the user agent is to <dfn>Parse the WebVTT settings</dfn>
+  given by a string <var title="">input</var> for a <a>text track
+  cue</a> <var title="">cue</var>, the user agent must run the
   following steps:</p>
 
   <ol>
 
-   <li><p>Let <var title="">settings</var> be the result of <span
+   <li><p>Let <var title="">settings</var> be the result of <a
    title="split a string on spaces">splitting <var
-   title="">input</var> on spaces</span>.</p></li>
+   title="">input</var> on spaces</a>.</p></li>
 
    <li>
 
@@ -1644,42 +1653,42 @@
 
       <dl>
 
-       <dt>If <var title="">name</var> is a <span>case-sensitive</span> match for "<code title="">vertical</code>"</dt>
+       <dt>If <var title="">name</var> is a <a>case-sensitive</a> match for "<code title="">vertical</code>"</dt>
 
        <dd>
 
         <ol>
 
          <li><p>If <var title="">value</var> is a
-         <span>case-sensitive</span> match for the string "<code
+         <a>case-sensitive</a> match for the string "<code
          title="">rl</code>", then let <var title="">cue</var>'s
-         <span>text track cue writing direction</span> be <span
+         <a>Text track cue writing direction</a> be <a
          title="text track cue vertical growing left writing
-         direction">vertical growing left</span>.</p></li>
+         direction">vertical growing left</a>.</p></li>
 
          <li><p>Otherwise, if <var title="">value</var> is a
-         <span>case-sensitive</span> match for the string "<code
+         <a>case-sensitive</a> match for the string "<code
          title="">lr</code>", then let <var title="">cue</var>'s
-         <span>text track cue writing direction</span> be <span
+         <a>Text track cue writing direction</a> be <a
          title="text track cue vertical growing right writing
-         direction">vertical growing right</span>.</p></li>
+         direction">vertical growing right</a>.</p></li>
 
         </ol>
 
        </dd>
 
-       <dt>If <var title="">name</var> is a <span>case-sensitive</span> match for "<code title="">line</code>"</dt>
+       <dt>If <var title="">name</var> is a <a>case-sensitive</a> match for "<code title="">line</code>"</dt>
 
        <dd>
 
         <ol>
 
          <li><p>If <var title="">value</var> contains any characters other than U+002D HYPHEN-MINUS
-         characters (-), U+0025 PERCENT SIGN characters (%), and <span>ASCII digits</span>, then
+         characters (-), U+0025 PERCENT SIGN characters (%), and <a>ASCII digits</a>, then
          jump to the step labeled <i>next setting</i>.</p></li>
 
-         <li><p>If <var title="">value</var> does not contain at least one <span title="ASCII
-         digits">ASCII digit</span>, then jump to the step labeled <i>next setting</i>.</p></li>
+         <li><p>If <var title="">value</var> does not contain at least one <a title="ASCII
+         digits">ASCII digit</a>, then jump to the step labeled <i>next setting</i>.</p></li>
 
          <li><p>If any character in <var title="">value</var> other
          than the first character is a U+002D HYPHEN-MINUS character
@@ -1708,30 +1717,30 @@
          title="">number</var>&nbsp;&le;&nbsp;100, then jump to the
          step labeled <i>next setting</i>.</p></li>
 
-         <li><p>Let <var title="">cue</var>'s <span>text track cue
-         line position</span> be <var title="">number</var>.</p></li>
+         <li><p>Let <var title="">cue</var>'s <a>text track cue
+         line position</a> be <var title="">number</var>.</p></li>
 
          <li><p>If the last character in <var title="">value</var> is
          a U+0025 PERCENT SIGN character (%), then let <var
-         title="">cue</var>'s <span>text track cue snap-to-lines
-         flag</span> be false. Otherwise, let it be true.</p></li>
+         title="">cue</var>'s <a>text track cue snap-to-lines
+         flag</a> be false. Otherwise, let it be true.</p></li>
 
         </ol>
 
        </dd>
 
-       <dt>If <var title="">name</var> is a <span>case-sensitive</span> match for "<code title="">position</code>"</dt>
+       <dt>If <var title="">name</var> is a <a>case-sensitive</a> match for "<code title="">position</code>"</dt>
 
        <dd>
 
         <ol>
 
          <li><p>If <var title="">value</var> contains any characters other than U+0025 PERCENT SIGN
-         characters (%) and <span>ASCII digits</span>, then jump to the step labeled <i>next
+         characters (%) and <a>ASCII digits</a>, then jump to the step labeled <i>next
          setting</i>.</p></li>
 
-         <li><p>If <var title="">value</var> does not contain at least one <span title="ASCII
-         digits">ASCII digit</span>, then jump to the step labeled <i>next setting</i>.</p></li>
+         <li><p>If <var title="">value</var> does not contain at least one <a title="ASCII
+         digits">ASCII digit</a>, then jump to the step labeled <i>next setting</i>.</p></li>
 
          <li><p>If any character in <var title="">value</var> other
          than the last character is a U+0025 PERCENT SIGN character
@@ -1751,25 +1760,25 @@
          title="">number</var>&nbsp;&le;&nbsp;100, then jump to the
          step labeled <i>next setting</i>.</p></li>
 
-         <li><p>Let <var title="">cue</var>'s <span>text track cue text
-         position</span> be <var title="">number</var>.</p></li>
+         <li><p>Let <var title="">cue</var>'s <a>text track cue text
+         position</a> be <var title="">number</var>.</p></li>
 
         </ol>
 
        </dd>
 
-       <dt>If <var title="">name</var> is a <span>case-sensitive</span> match for "<code title="">size</code>"</dt>
+       <dt>If <var title="">name</var> is a <a>case-sensitive</a> match for "<code title="">size</code>"</dt>
 
        <dd>
 
         <ol>
 
          <li><p>If <var title="">value</var> contains any characters other than U+0025 PERCENT SIGN
-         characters (%) and <span>ASCII digits</span>, then jump to the step labeled <i>next
+         characters (%) and <a>ASCII digits</a>, then jump to the step labeled <i>next
          setting</i>.</p></li>
 
-         <li><p>If <var title="">value</var> does not contain at least one <span title="ASCII
-         digits">ASCII digit</span>, then jump to the step labeled <i>next setting</i>.</p></li>
+         <li><p>If <var title="">value</var> does not contain at least one <a title="ASCII
+         digits">ASCII digit</a>, then jump to the step labeled <i>next setting</i>.</p></li>
 
          <li><p>If any character in <var title="">value</var> other
          than the last character is a U+0025 PERCENT SIGN character
@@ -1789,48 +1798,48 @@
          title="">number</var>&nbsp;&le;&nbsp;100, then jump to the
          step labeled <i>next setting</i>.</p></li>
 
-         <li><p>Let <var title="">cue</var>'s <span>text track cue
-         size</span> be <var title="">number</var>.</p></li>
+         <li><p>Let <var title="">cue</var>'s <a>text track cue
+         size</a> be <var title="">number</var>.</p></li>
 
         </ol>
 
        </dd>
 
-       <dt>If <var title="">name</var> is a <span>case-sensitive</span> match for "<code title="">align</code>"</dt>
+       <dt>If <var title="">name</var> is a <a>case-sensitive</a> match for "<code title="">align</code>"</dt>
 
        <dd>
 
         <ol>
 
          <li><p>If <var title="">value</var> is a
-         <span>case-sensitive</span> match for the string "<code
+         <a>case-sensitive</a> match for the string "<code
          title="">start</code>", then let <var title="">cue</var>'s
-         <span>text track cue alignment</span> be <span title="text
-         track cue start alignment">start alignment</span>.</p></li>
-
-         <li><p>If <var title="">value</var> is a
-         <span>case-sensitive</span> match for the string "<code
-         title="">middle</code>", then let <var title="">cue</var>'s
-         <span>text track cue alignment</span> be <span title="text
-         track cue middle alignment">middle alignment</span>.</p></li>
+         <a>Text track cue alignment</a> be <a title="text
+         track cue start alignment">start alignment</a>.</p></li>
 
          <li><p>If <var title="">value</var> is a
-         <span>case-sensitive</span> match for the string "<code
-         title="">end</code>", then let <var title="">cue</var>'s
-         <span>text track cue alignment</span> be <span title="text
-         track cue end alignment">end alignment</span>.</p></li>
+         <a>case-sensitive</a> match for the string "<code
+         title="">middle</code>", then let <var title="">cue</var>'s
+         <a>Text track cue alignment</a> be <a title="text
+         track cue middle alignment">middle alignment</a>.</p></li>
 
          <li><p>If <var title="">value</var> is a
-         <span>case-sensitive</span> match for the string "<code
-         title="">left</code>", then let <var title="">cue</var>'s
-         <span>text track cue alignment</span> be <span title="text
-         track cue left alignment">left alignment</span>.</p></li>
+         <a>case-sensitive</a> match for the string "<code
+         title="">end</code>", then let <var title="">cue</var>'s
+         <a>Text track cue alignment</a> be <a title="text
+         track cue end alignment">end alignment</a>.</p></li>
 
          <li><p>If <var title="">value</var> is a
-         <span>case-sensitive</span> match for the string "<code
+         <a>case-sensitive</a> match for the string "<code
+         title="">left</code>", then let <var title="">cue</var>'s
+         <a>Text track cue alignment</a> be <a title="text
+         track cue left alignment">left alignment</a>.</p></li>
+
+         <li><p>If <var title="">value</var> is a
+         <a>case-sensitive</a> match for the string "<code
          title="">right</code>", then let <var title="">cue</var>'s
-         <span>text track cue alignment</span> be <span title="text
-         track cue right alignment">right alignment</span>.</p></li>
+         <a>Text track cue alignment</a> be <a title="text
+         track cue right alignment">right alignment</a>.</p></li>
 
         </ol>
 
@@ -1851,7 +1860,7 @@
   </ol>
 
   <p>When this specification says that a user agent is to
-  <dfn>collect a WebVTT timestamp</dfn>, the user agent must run the
+  <dfn>Collect a WebVTT timestamp</dfn>, the user agent must run the
   following steps:</p>
 
   <ol>
@@ -1868,10 +1877,10 @@
    steps.</p></li>
 
    <li><p>If the character indicated by <var title="">position</var>
-   is not an <span title="ASCII digits">ASCII digit</span>, then
+   is not an <a title="ASCII digits">ASCII digit</a>, then
    return an error and abort these steps.</p></li>
 
-   <li><p><span>Collect a sequence of characters</span> that are <span>ASCII digits</span>, and let
+   <li><p><a>Collect a sequence of characters</a> that are <a>ASCII digits</a>, and let
    <var title="">string</var> be the collected substring.</p></li>
 
    <li><p>Interpret <var title="">string</var> as a base-ten
@@ -1889,7 +1898,7 @@
    return an error and abort these steps. Otherwise, move <var
    title="">position</var> forwards one character.</p></li>
 
-   <li><p><span>Collect a sequence of characters</span> that are <span>ASCII digits</span>, and let
+   <li><p><a>Collect a sequence of characters</a> that are <a>ASCII digits</a>, and let
    <var title="">string</var> be the collected substring.</p></li>
 
    <li><p>If <var title="">string</var> is not exactly two characters
@@ -1915,7 +1924,7 @@
      return an error and abort these steps. Otherwise, move <var
      title="">position</var> forwards one character.</p></li>
 
-     <li><p><span>Collect a sequence of characters</span> that are <span>ASCII digits</span>, and
+     <li><p><a>Collect a sequence of characters</a> that are <a>ASCII digits</a>, and
      let <var title="">string</var> be the collected substring.</p></li>
 
      <li><p>If <var title="">string</var> is not exactly two
@@ -1946,7 +1955,7 @@
    then return an error and abort these steps. Otherwise, move <var
    title="">position</var> forwards one character.</p></li>
 
-   <li><p><span>Collect a sequence of characters</span> that are <span>ASCII digits</span>, and let
+   <li><p><a>Collect a sequence of characters</a> that are <a>ASCII digits</a>, and let
    <var title="">string</var> be the collected substring.</p></li>
 
    <li><p>If <var title="">string</var> is not exactly three
@@ -1965,11 +1974,11 @@
    greater than 999, since we know it had exactly three characters in
    the range 0-9, so we know it's a number in the range 0-999 -->
 
-   <li><p>Let <var title="">result</var> be <span title=""><var
+   <li><p>Let <var title="">result</var> be <var
    title="">value<sub>1</sub></var>&times;60&times;60 + <var
    title="">value<sub>2</sub></var>&times;60 + <var
    title="">value<sub>3</sub></var> + <var
-   title="">value<sub>4</sub></var>&#x2215;1000</span>. <!-- &#x00f7;
+   title="">value<sub>4</sub></var>&#x2215;1000. <!-- &#x00f7;
    is the division sign if people prefer that to the slash
    --></p></li>
 
@@ -1982,90 +1991,90 @@
   <h3><dfn>WebVTT cue text parsing rules</dfn></h3>
 
   <p>A <dfn>WebVTT Node Object</dfn> is a conceptual construct used to
-  represent components of <span>WebVTT cue text</span> so that its
+  represent components of <a>WebVTT cue text</a> so that its
   processing can be described without reference to the underlying
   syntax.</p>
 
-  <p>There are two broad classes of <span title="WebVTT Node
-  Object">WebVTT Node Objects</span>: <span title="WebVTT Internal
-  Node Object">WebVTT Internal Node Objects</span> and <span
-  title="WebVTT Leaf Node Object">WebVTT Leaf Node Objects</span>.</p>
+  <p>There are two broad classes of <a title="WebVTT Node
+  Object">WebVTT Node Objects</a>: <a title="WebVTT Internal
+  Node Object">WebVTT Internal Node Objects</a> and <a
+  title="WebVTT Leaf Node Object">WebVTT Leaf Node Objects</a>.</p>
 
   <p><dfn title="WebVTT Internal Node Object">WebVTT Internal Node Objects</dfn> are those that can
-  contain further <span title="WebVTT Node Object">WebVTT Node Objects</span>. They are conceptually
-  similar to elements in HTML or the DOM. <span title="WebVTT Internal Node Object">WebVTT Internal
-  Node Objects</span> have an ordered list of child <span title="WebVTT Node Object">WebVTT Node
-  Objects</span>. The <span>WebVTT Internal Node Object</span> is said to be the <i>parent</i> of
+  contain further <a title="WebVTT Node Object">WebVTT Node Objects</a>. They are conceptually
+  similar to elements in HTML or the DOM. <a title="WebVTT Internal Node Object">WebVTT Internal
+  Node Objects</a> have an ordered list of child <a title="WebVTT Node Object">WebVTT Node
+  Objects</a>. The <a>WebVTT Internal Node Object</a> is said to be the <i>parent</i> of
   the children. Cycles do not occur; the parent-child relationships so constructed form a tree
-  structure. <span title="WebVTT Internal Node Object">WebVTT Internal Node Objects</span> also have
+  structure. <a title="WebVTT Internal Node Object">WebVTT Internal Node Objects</a> also have
   an ordered list of class names, known as their <dfn title="WebVTT Node Object's applicable
   classes">applicable classes</dfn>, and a language, known as their <dfn title="WebVTT Node Object's
   applicable language">applicable language</dfn>, which is to be interpreted as a BCP 47 language
   code. <a href="#refsBCP47">[BCP47]</a></p>
 
-  <p>There are several concrete classes of <span title="WebVTT
-  Internal Node Object">WebVTT Internal Node Objects</span>:</p>
+  <p>There are several concrete classes of <a title="WebVTT
+  Internal Node Object">WebVTT Internal Node Objects</a>:</p>
 
   <dl>
 
    <dt><dfn title="List of WebVTT Node Objects">Lists of WebVTT Node Objects</dfn></dt>
    <dd>
-    <p>These are used as root nodes for trees of <span title="WebVTT
-    Node Object">WebVTT Node Objects</span>.</p>
+    <p>These are used as root nodes for trees of <a title="WebVTT
+    Node Object">WebVTT Node Objects</a>.</p>
    </dd>
 
    <dt><dfn title="WebVTT Class Object">WebVTT Class Objects</dfn></dt>
    <dd>
-    <p>These represent spans of text (a <span>WebVTT cue class
-    span</span>) in <span>WebVTT cue text</span>, and are used to
-    annotate parts of the cue with <span title="WebVTT Node Object's
-    applicable classes">applicable classes</span> without implying
+    <p>These represent spans of text (a <a>WebVTT cue class
+    span</a>) in <a>WebVTT cue text</a>, and are used to
+    annotate parts of the cue with <a title="WebVTT Node Object's
+    applicable classes">applicable classes</a> without implying
     further meaning (such as italics or bold).</p>
    </dd>
 
    <dt><dfn title="WebVTT Italic Object">WebVTT Italic Objects</dfn></dt>
    <dd>
-    <p>These represent spans of italic text (a <span>WebVTT cue
-    italics span</span>) in <span>WebVTT cue text</span>.</p>
+    <p>These represent spans of italic text (a <a>WebVTT cue
+    italics span</a>) in <a>WebVTT cue text</a>.</p>
    </dd>
 
    <dt><dfn title="WebVTT Bold Object">WebVTT Bold Objects</dfn></dt>
    <dd>
-    <p>These represent spans of bold text (a <span>WebVTT cue
-    bold span</span>) in <span>WebVTT cue text</span>.</p>
+    <p>These represent spans of bold text (a <a>WebVTT cue
+    bold span</a>) in <a>WebVTT cue text</a>.</p>
    </dd>
 
    <dt><dfn title="WebVTT Underline Object">WebVTT Underline Objects</dfn></dt>
    <dd>
-    <p>These represent spans of underline text (a <span>WebVTT cue
-    underline span</span>) in <span>WebVTT cue text</span>.</p>
+    <p>These represent spans of underline text (a <a>WebVTT cue
+    underline span</a>) in <a>WebVTT cue text</a>.</p>
    </dd>
 
    <dt><dfn title="WebVTT Ruby Object">WebVTT Ruby Objects</dfn></dt>
    <dd>
-    <p>These represent spans of ruby (a <span>WebVTT cue
-    ruby span</span>) in <span>WebVTT cue text</span>.</p>
+    <p>These represent spans of ruby (a <a>WebVTT cue
+    ruby span</a>) in <a>WebVTT cue text</a>.</p>
    </dd>
 
    <dt><dfn title="WebVTT Ruby Text Object">WebVTT Ruby Text Objects</dfn></dt>
    <dd>
-    <p>These represent spans of ruby text (a <span>WebVTT cue ruby
-    text span</span>) in <span>WebVTT cue text</span>.</p>
+    <p>These represent spans of ruby text (a <a>WebVTT cue ruby
+    text span</a>) in <a>WebVTT cue text</a>.</p>
    </dd>
 
    <dt><dfn title="WebVTT Voice Object">WebVTT Voice Objects</dfn></dt>
    <dd>
     <p>These represent spans of text associated with a specific voice
-    (a <span>WebVTT cue voice span</span>) in <span>WebVTT cue
-    text</span>. A <span>WebVTT Voice Object</span> has a value, which
+    (a <a>WebVTT cue voice span</a>) in <a>WebVTT cue
+    text</a>. A <a>WebVTT Voice Object</a> has a value, which
     is the name of the voice.</p>
    </dd>
 
    <dt><dfn title="WebVTT Language Object">WebVTT Language Objects</dfn></dt>
    <dd>
-    <p>These represent spans of text (a <span>WebVTT cue language span</span>) in <span>WebVTT cue
-    text</span>, and are used to annotate parts of the cue where the <span title="WebVTT Node
-    Object's applicable language">applicable language</span> might be different than the surrounding
+    <p>These represent spans of text (a <a>WebVTT cue language span</a>) in <a>WebVTT cue
+    text</a>, and are used to annotate parts of the cue where the <a title="WebVTT Node
+    Object's applicable language">applicable language</a> might be different than the surrounding
     text's, without implying further meaning (such as italics or bold).</p>
    </dd>
 
@@ -2073,23 +2082,23 @@
 
   <p><dfn title="WebVTT Leaf Node Object">WebVTT Leaf Node
   Objects</dfn> are those that contain data, such as text, and cannot
-  contain child <span title="WebVTT Node Object">WebVTT Node
-  Objects</span>.</p>
-
-  <p>There are two concrete classes of <span title="WebVTT Leaf Node
-  Object">WebVTT Leaf Node Objects</span>:</p>
+  contain child <a title="WebVTT Node Object">WebVTT Node
+  Objects</a>.</p>
+
+  <p>There are two concrete classes of <a title="WebVTT Leaf Node
+  Object">WebVTT Leaf Node Objects</a>:</p>
 
   <dl>
 
    <dt><dfn title="WebVTT Text Object">WebVTT Text Objects</dfn></dt>
    <dd>
-    <p>A fragment of text. A <span>WebVTT Text Object</span> has a
+    <p>A fragment of text. A <a>WebVTT Text Object</a> has a
     value, which is the text it represents.</p>
    </dd>
 
    <dt><dfn title="WebVTT Timestamp Object">WebVTT Timestamp Objects</dfn></dt>
    <dd>
-    <p>A timestamp. A <span>WebVTT Timestamp Object</span> has a
+    <p>A timestamp. A <a>WebVTT Timestamp Object</a> has a
     value, in seconds and fractions of a second, which is the time
     represented by the timestamp.</p>
    </dd>
@@ -2097,9 +2106,9 @@
   </dl>
 
   <p>To parse a string <var title="">input</var> supposedly containing
-  <span>WebVTT cue text</span>, user agents must use the following
-  algorithm. This algorithm returns a <span>list of WebVTT Node
-  Objects</span>.</p>
+  <a>WebVTT cue text</a>, user agents must use the following
+  algorithm. This algorithm returns a <a>List of WebVTT Node
+  Objects</a>.</p>
 
   <ol>
 
@@ -2110,11 +2119,11 @@
    title="">input</var>, initially pointing at the start of the
    string.</p></li>
 
-   <li><p>Let <var title="">result</var> be a <span>List of WebVTT
-   Node Objects</span>, initially empty.</p></li>
-
-   <li><p>Let <var title="">current</var> be the <span>WebVTT Internal
-   Node Object</span> <var title="">result</var>.</p></li>
+   <li><p>Let <var title="">result</var> be a <a>List of WebVTT
+   Node Objects</a>, initially empty.</p></li>
+
+   <li><p>Let <var title="">current</var> be the <a>WebVTT Internal
+   Node Object</a> <var title="">result</var>.</p></li>
 
    <li><p>Let <var title="">language stack</var> be a stack of language codes, initially
    empty.</p></li>
@@ -2124,7 +2133,7 @@
    abort these steps.</p></li>
 
    <li><p>Let <var title="">token</var> be the result of invoking the
-   <span>WebVTT cue text tokenizer</span>.</p></li>
+   <a>WebVTT cue text tokenizer</a>.</p></li>
 
    <li>
 
@@ -2138,11 +2147,11 @@
 
       <ol>
 
-       <li><p>Create a <span>WebVTT Text Object</span> whose value is
+       <li><p>Create a <a>WebVTT Text Object</a> whose value is
        the value of the string token <var
        title="">token</var>.</p></li>
 
-       <li><p>Append the newly created <span>WebVTT Text Object</span>
+       <li><p>Append the newly created <a>WebVTT Text Object</a>
        to <var title="">current</var>.</p></li>
 
       </ol>
@@ -2164,46 +2173,46 @@
 -->
        <dt>If the tag name is "<code title="">c</code>"</dt>
        <dd>
-        <p><span title="attach a WebVTT Internal Node
-        Object">Attach</span> a <span>WebVTT Class Object</span>.</p>
+        <p><a title="attach a WebVTT Internal Node
+        Object">Attach</a> a <a>WebVTT Class Object</a>.</p>
        </dd>
 
        <dt>If the tag name is "<code title="">i</code>"</dt>
        <dd>
-        <p><span title="attach a WebVTT Internal Node
-        Object">Attach</span> a <span>WebVTT Italic Object</span>.</p>
+        <p><a title="attach a WebVTT Internal Node
+        Object">Attach</a> a <a>WebVTT Italic Object</a>.</p>
        </dd>
 
        <dt>If the tag name is "<code title="">b</code>"</dt>
        <dd>
-        <p><span title="attach a WebVTT Internal Node
-        Object">Attach</span> a <span>WebVTT Bold Object</span>.</p>
+        <p><a title="attach a WebVTT Internal Node
+        Object">Attach</a> a <a>WebVTT Bold Object</a>.</p>
        </dd>
 
        <dt>If the tag name is "<code title="">u</code>"</dt>
        <dd>
-        <p><span title="attach a WebVTT Internal Node
-        Object">Attach</span> a <span>WebVTT Underline Object</span>.</p>
+        <p><a title="attach a WebVTT Internal Node
+        Object">Attach</a> a <a>WebVTT Underline Object</a>.</p>
        </dd>
 
        <dt>If the tag name is "<code title="">ruby</code>"</dt>
        <dd>
-        <p><span title="attach a WebVTT Internal Node
-        Object">Attach</span> a <span>WebVTT Ruby Object</span>.</p>
+        <p><a title="attach a WebVTT Internal Node
+        Object">Attach</a> a <a>WebVTT Ruby Object</a>.</p>
        </dd>
 
        <dt>If the tag name is "<code title="">rt</code>"</dt>
        <dd>
-        <p>If <var title="">current</var> is a <span>WebVTT Ruby
-        Object</span>, then <span title="attach a WebVTT Internal Node
-        Object">attach</span> a <span>WebVTT Ruby Text
-        Object</span>.</p>
+        <p>If <var title="">current</var> is a <a>WebVTT Ruby
+        Object</a>, then <a title="attach a WebVTT Internal Node
+        Object">attach</a> a <a>WebVTT Ruby Text
+        Object</a>.</p>
        </dd>
 
        <dt>If the tag name is "<code title="">v</code>"</dt>
        <dd>
-        <p><span title="attach a WebVTT Internal Node
-        Object">Attach</span> a <span>WebVTT Voice Object</span>, and
+        <p><a title="attach a WebVTT Internal Node
+        Object">Attach</a> a <a>WebVTT Voice Object</a>, and
         set its value to the token's annotation string, or the empty
         string if there is no annotation string.</p>
        </dd>
@@ -2211,8 +2220,8 @@
        <dt>If the tag name is "<code title="">lang</code>"</dt>
        <dd>
         <p>Push the value of the token's annotation string, or the empty string if there is no
-        annotation string, onto the <var title="">language stack</var>; then <span title="attach a
-        WebVTT Internal Node Object">attach</span> a <span>WebVTT Language Object</span>.</p>
+        annotation string, onto the <var title="">language stack</var>; then <a title="attach a
+        WebVTT Internal Node Object">attach</a> a <a>WebVTT Language Object</a>.</p>
        </dd>
 
        <dt>Otherwise</dt>
@@ -2228,16 +2237,16 @@
 
       <ol>
 
-       <li><p>Create a new <span>WebVTT Internal Node Object</span> of
+       <li><p>Create a new <a>WebVTT Internal Node Object</a> of
        the specified concrete class.</p></li>
 
-       <li><p>Set the new object's list of <span title="WebVTT Node
-       Object's applicable classes">applicable classes</span> to the
+       <li><p>Set the new object's list of <a title="WebVTT Node
+       Object's applicable classes">applicable classes</a> to the
        list of classes in the token, excluding any classes that are
        the empty string.</p>
 
-       <li><p>Set the new object's <span title="WebVTT Node Object's applicable language">applicable
-       language</span> to the top entry on the <var title="">language stack</var>, if the stack is
+       <li><p>Set the new object's <a title="WebVTT Node Object's applicable language">applicable
+       language</a> to the top entry on the <var title="">language stack</var>, if the stack is
        not empty.</p>
 
        <li><p>Append the newly created node object to <var
@@ -2261,43 +2270,43 @@
 
        <li>The tag name of the end tag token <var title="">token</var>
        is "<code title="">c</code>" and <var title="">current</var> is
-       a <span>WebVTT Class Object</span>.</li>
+       a <a>WebVTT Class Object</a>.</li>
 
        <li>The tag name of the end tag token <var title="">token</var>
        is "<code title="">i</code>" and <var title="">current</var> is
-       a <span>WebVTT Italic Object</span>.</li>
+       a <a>WebVTT Italic Object</a>.</li>
 
        <li>The tag name of the end tag token <var title="">token</var>
        is "<code title="">b</code>" and <var title="">current</var> is
-       a <span>WebVTT Bold Object</span>.</li>
+       a <a>WebVTT Bold Object</a>.</li>
 
        <li>The tag name of the end tag token <var title="">token</var>
        is "<code title="">u</code>" and <var title="">current</var> is
-       a <span>WebVTT Underline Object</span>.</li>
+       a <a>WebVTT Underline Object</a>.</li>
 
        <li>The tag name of the end tag token <var title="">token</var>
        is "<code title="">ruby</code>" and <var title="">current</var> is
-       a <span>WebVTT Ruby Object</span>.</li>
+       a <a>WebVTT Ruby Object</a>.</li>
 
        <li>The tag name of the end tag token <var title="">token</var>
        is "<code title="">rt</code>" and <var title="">current</var> is
-       a <span>WebVTT Ruby Text Object</span>.</li>
+       a <a>WebVTT Ruby Text Object</a>.</li>
 
        <li>The tag name of the end tag token <var title="">token</var>
        is "<code title="">v</code>" and <var title="">current</var> is
-       a <span>WebVTT Voice Object</span>.</li>
+       a <a>WebVTT Voice Object</a>.</li>
 
       </ul>
 
       <p>Otherwise, if the tag name of the end tag token <var title="">token</var> is "<code
-      title="">lang</code>" and <var title="">current</var> is a <span>WebVTT Language
-      Object</span>, then let <var title="">current</var> be the parent node of <var
+      title="">lang</code>" and <var title="">current</var> is a <a>WebVTT Language
+      Object</a>, then let <var title="">current</var> be the parent node of <var
       title="">current</var>, and pop the top value from the <var title="">language stack</var>.</p>
 
       <p>Otherwise, if the tag name of the end tag token <var
       title="">token</var> is "<code title="">ruby</code>" and <var
-      title="">current</var> is a <span>WebVTT Ruby Text
-      Object</span>, then let <var title="">current</var> be the
+      title="">current</var> is a <a>WebVTT Ruby Text
+      Object</a>, then let <var title="">current</var> be the
       parent node of the parent node of <var
       title="">current</var>.</p>
 
@@ -2316,15 +2325,15 @@
        <var title="">input</var>, initially pointing at the start of
        the string.</p></li>
 
-       <li><p><span>Collect a WebVTT timestamp</span>.</p></li>
+       <li><p><a>Collect a WebVTT timestamp</a>.</p></li>
 
        <li>
 
         <p>If that algorithm does not fail, and if <var
         title="">position</var> now points at the end of <var
         title="">input</var> (i.e. there are no trailing characters
-        after the timestamp), then create a <span>WebVTT Timestamp
-        Object</span> whose value is the collected time, then append
+        after the timestamp), then create a <a>WebVTT Timestamp
+        Object</a> whose value is the collected time, then append
         it to <var title="">current</var>.</p>
 
         <p>Otherwise, ignore the token.</p>
@@ -2355,8 +2364,8 @@
    title="">position</var> be the same variables as those of the same
    name in the algorithm that invoked these steps.</p></li>
 
-   <li><p>Let <var title="">tokenizer state</var> be <span>WebVTT data
-   state</span>.</p></li>
+   <li><p>Let <var title="">tokenizer state</var> be <a>WebVTT data
+   state</a>.</p></li>
 
    <li><p>Let <var title="">result</var> be the empty string.</p></li>
 
@@ -2396,16 +2405,16 @@
        <dt>U+0026 AMPERSAND (&amp;)</dt>
        <dd>
         <p>Set <var title="">buffer</var> to <var title="">c</var>,
-        set <var title="">tokenizer state</var> to the <span>WebVTT
-        escape state</span>, and jump to the step labeled
+        set <var title="">tokenizer state</var> to the <a>WebVTT
+        escape state</a>, and jump to the step labeled
         <i>next</i>.</p>
        </dd>
 
        <dt>U+003C LESS-THAN SIGN (&lt;)</dt>
        <dd>
         <p>If <var title="">result</var> is the empty string, then set
-        <var title="">tokenizer state</var> to the <span>WebVTT tag
-        state</span> and jump to the step labeled <i>next</i>.</p>
+        <var title="">tokenizer state</var> to the <a>WebVTT tag
+        state</a> and jump to the step labeled <i>next</i>.</p>
         <p>Otherwise, return a string token whose value is <var
         title="">result</var> and abort these steps.</p>
        </dd>
@@ -2443,7 +2452,7 @@
         <i>next</i>.</p>
        </dd>
 
-       <dt><span>Alphanumeric ASCII characters</span></dt>
+       <dt><a>Alphanumeric ASCII characters</a></dt>
        <dd>
         <p>Append <var title="">c</var> to <var title="">buffer</var>
         and jump to the step labeled <i>next</i>.</p>
@@ -2483,7 +2492,7 @@
         title="">result</var>.</p>
 
         <p>Then, in any case, set <var title="">tokenizer state</var>
-        to the <span>WebVTT data state</span>, and jump to the step
+        to the <a>WebVTT data state</a>, and jump to the step
         labeled <i>next</i>.</p>
 
        </dd>
@@ -2501,7 +2510,7 @@
         <p>Append <var title="">buffer</var> to <var
         title="">result</var>, append <var title="">c</var> to <var
         title="">result</var>, set <var title="">tokenizer state</var>
-        to the <span>WebVTT data state</span>, and jump to the step
+        to the <a>WebVTT data state</a>, and jump to the step
         labeled <i>next</i>.</p>
        </dd> 
 
@@ -2524,31 +2533,31 @@
        <dt>U+0020 SPACE character</dt>
        <dd>
         <!-- assert: >result< is the empty string -->
-        <p>Set <var title="">tokenizer state</var> to the <span>WebVTT
-        start tag annotation state</span>, and jump to the step labeled
+        <p>Set <var title="">tokenizer state</var> to the <a>WebVTT
+        start tag annotation state</a>, and jump to the step labeled
         <i>next</i>.</p>
        </dd> 
 
        <dt>U+002E FULL STOP character (.)</dt>
        <dd>
         <!-- assert: >result< is the empty string -->
-        <p>Set <var title="">tokenizer state</var> to the <span>WebVTT
-        start tag class state</span>, and jump to the step labeled
+        <p>Set <var title="">tokenizer state</var> to the <a>WebVTT
+        start tag class state</a>, and jump to the step labeled
         <i>next</i>.</p>
        </dd> 
 
        <dt>U+002F SOLIDUS character (/)</dt>
        <dd>
-        <p>Set <var title="">tokenizer state</var> to the <span>WebVTT
-        end tag state</span>, and jump to the step labeled
+        <p>Set <var title="">tokenizer state</var> to the <a>WebVTT
+        end tag state</a>, and jump to the step labeled
         <i>next</i>.</p>
        </dd>
 
-       <dt><span>ASCII digits</span></dt>
+       <dt><a>ASCII digits</a></dt>
        <dd>
         <p>Set <var title="">result</var> to <var title="">c</var>,
-        set <var title="">tokenizer state</var> to the <span>WebVTT
-        timestamp tag state</span>, and jump to the step labeled
+        set <var title="">tokenizer state</var> to the <a>WebVTT
+        timestamp tag state</a>, and jump to the step labeled
         <i>next</i>.</p>
        </dd> 
 
@@ -2568,8 +2577,8 @@
        <dt>Anything else</dt>
        <dd>
         <p>Set <var title="">result</var> to <var title="">c</var>,
-        set <var title="">tokenizer state</var> to the <span>WebVTT
-        start tag state</span>, and jump to the step labeled
+        set <var title="">tokenizer state</var> to the <a>WebVTT
+        start tag state</a>, and jump to the step labeled
         <i>next</i>.</p>
        </dd> 
 
@@ -2590,23 +2599,23 @@
        <dt>U+000C FORM FEED (FF) character</dt>
        <dt>U+0020 SPACE character</dt>
        <dd>
-        <p>Set <var title="">tokenizer state</var> to the <span>WebVTT
-        start tag annotation state</span>, and jump to the step labeled
+        <p>Set <var title="">tokenizer state</var> to the <a>WebVTT
+        start tag annotation state</a>, and jump to the step labeled
         <i>next</i>.</p>
        </dd> 
 
        <dt>U+000A LINE FEED (LF) character</dt>
        <dd>
         <p>Set <var title="">buffer</var> to <var title="">c</var>,
-        set <var title="">tokenizer state</var> to the <span>WebVTT
-        start tag annotation state</span>, and jump to the step
+        set <var title="">tokenizer state</var> to the <a>WebVTT
+        start tag annotation state</a>, and jump to the step
         labeled <i>next</i>.</p>
        </dd>
 
        <dt>U+002E FULL STOP character (.)</dt>
        <dd>
-        <p>Set <var title="">tokenizer state</var> to the <span>WebVTT
-        start tag class state</span>, and jump to the step labeled
+        <p>Set <var title="">tokenizer state</var> to the <a>WebVTT
+        start tag class state</a>, and jump to the step labeled
         <i>next</i>.</p>
        </dd> 
 
@@ -2650,7 +2659,7 @@
         <p>Append to <var title="">classes</var> an entry whose value
         is <var title="">buffer</var>, set <var title="">buffer</var>
         to the empty string, set <var title="">tokenizer state</var>
-        to the <span>WebVTT start tag annotation state</span>, and
+        to the <a>WebVTT start tag annotation state</a>, and
         jump to the step labeled <i>next</i>.</p>
        </dd> 
 
@@ -2659,8 +2668,8 @@
         <p>Append to <var title="">classes</var> an entry whose value
         is <var title="">buffer</var>, set <var title="">buffer</var>
         to <var title="">c</var>, set <var title="">tokenizer
-        state</var> to the <span>WebVTT start tag annotation
-        state</span>, and jump to the step labeled <i>next</i>.</p>
+        state</var> to the <a>WebVTT start tag annotation
+        state</a>, and jump to the step labeled <i>next</i>.</p>
        </dd>
 
        <dt>U+002E FULL STOP character (.)</dt>
@@ -2715,11 +2724,11 @@
 
        <dt>End-of-file marker</dt>
        <dd>
-        <p>Remove any leading or trailing <span title="space
-        character">space characters</span> from <var
+        <p>Remove any leading or trailing <a title="space
+        character">space characters</a> from <var
         title="">buffer</var>, and replace any sequence of one or more
-        consecutive <span title="space character">space
-        characters</span> in <var title="">buffer</var> with a single
+        consecutive <a title="space character">space
+        characters</a> in <var title="">buffer</var> with a single
         U+0020 SPACE character; then, return a start tag whose tag
         name is <var title="">result</var>, with the classes given in
         <var title="">classes</var>, and with <var
@@ -2818,58 +2827,58 @@
   <section>
   <h3><dfn>WebVTT cue text DOM construction rules</dfn></h3>
 
-  <p>To convert a <span>List of WebVTT Node Objects</span> to a DOM
+  <p>To convert a <a>List of WebVTT Node Objects</a> to a DOM
   tree for <code>Document</code> <var title="">owner</var>, user
   agents must create a tree of DOM nodes that is isomorphous to the
-  tree of <span title="WebVTT Node Object">WebVTT Node Objects</span>,
-  with the following mapping of <span title="WebVTT Node
-  Object">WebVTT Node Objects</span> to DOM nodes:</p>
+  tree of <a title="WebVTT Node Object">WebVTT Node Objects</a>,
+  with the following mapping of <a title="WebVTT Node
+  Object">WebVTT Node Objects</a> to DOM nodes:</p>
 
   <table>
    <thead>
     <tr>
-     <th><span>WebVTT Node Object</span>
+     <th><a>WebVTT Node Object</a>
      <th>DOM node
    <tbody>
     <tr>
-     <td><span>List of WebVTT Node Objects</span>
+     <td><a>List of WebVTT Node Objects</a>
      <td><code>DocumentFragment</code> node
     <tr>
-     <td><span>WebVTT Class Object</span>
+     <td><a>WebVTT Class Object</a>
      <td><code>HTMLElement</code> element node with <code title="dom-Node-localName">localName</code> "<code>span</code>".
     <tr>
-     <td><span>WebVTT Italic Object</span>
+     <td><a>WebVTT Italic Object</a>
      <td><code>HTMLElement</code> element node with <code title="dom-Node-localName">localName</code> "<code>i</code>".
     <tr>
-     <td><span>WebVTT Bold Object</span>
+     <td><a>WebVTT Bold Object</a>
      <td><code>HTMLElement</code> element node with <code title="dom-Node-localName">localName</code> "<code>b</code>".
     <tr>
-     <td><span>WebVTT Underline Object</span>
+     <td><a>WebVTT Underline Object</a>
      <td><code>HTMLElement</code> element node with <code title="dom-Node-localName">localName</code> "<code>u</code>".
     <tr>
-     <td><span>WebVTT Ruby Object</span>
+     <td><a>WebVTT Ruby Object</a>
      <td><code>HTMLElement</code> element node with <code title="dom-Node-localName">localName</code> "<code>ruby</code>".
     <tr>
-     <td><span>WebVTT Ruby Text Object</span>
+     <td><a>WebVTT Ruby Text Object</a>
      <td><code>HTMLElement</code> element node with <code title="dom-Node-localName">localName</code> "<code>rt</code>".
     <tr>
-     <td><span>WebVTT Voice Object</span>
-     <td><code>HTMLElement</code> element node with <code title="dom-Node-localName">localName</code> "<code>span</code>", and a <code title="attr-title">title</code> attribute set to the <span>WebVTT Voice Object</span>'s value.
+     <td><a>WebVTT Voice Object</a>
+     <td><code>HTMLElement</code> element node with <code title="dom-Node-localName">localName</code> "<code>span</code>", and a <code title="attr-title">title</code> attribute set to the <a>WebVTT Voice Object</a>'s value.
     <tr>
-     <td><span>WebVTT Class Object</span>
-     <td><code>HTMLElement</code> element node with <code title="dom-Node-localName">localName</code> "<code>span</code>", and a <code title="attr-lang">lang</code> attribute set to the <span>WebVTT Language Object</span>'s <span title="WebVTT Node Object's applicable language">applicable language</span>.
+     <td><a>WebVTT Class Object</a>
+     <td><code>HTMLElement</code> element node with <code title="dom-Node-localName">localName</code> "<code>span</code>", and a <code title="attr-lang">lang</code> attribute set to the <a>WebVTT Language Object</a>'s <a title="WebVTT Node Object's applicable language">applicable language</a>.
     <tr>
-     <td><span>WebVTT Text Object</span>
-     <td><code>Text</code> node whose character data is the value of the <span>WebVTT Text Object</span>.
+     <td><a>WebVTT Text Object</a>
+     <td><code>Text</code> node whose character data is the value of the <a>WebVTT Text Object</a>.
     <tr>
-     <td><span>WebVTT Timestamp Object</span>
-     <td><code>ProcessingInstruction</code> node whose <code title="dom-ProcessingInstruction-target">target</code> is "<code title="">timestamp</code>" and whose <code title="dom-ProcessingInstruction-data">data</code> is a <span>WebVTT timestamp</span> representing the value of the <span>WebVTT Timestamp Object</span>, with all optional components included, with one leading zero if the <var title="">hours</var> component is less than ten, and with no leading zeros otherwise.
+     <td><a>WebVTT Timestamp Object</a>
+     <td><code>ProcessingInstruction</code> node whose <code title="dom-ProcessingInstruction-target">target</code> is "<code title="">timestamp</code>" and whose <code title="dom-ProcessingInstruction-data">data</code> is a <a>WebVTT timestamp</a> representing the value of the <a>WebVTT Timestamp Object</a>, with all optional components included, with one leading zero if the <var title="">hours</var> component is less than ten, and with no leading zeros otherwise.
   </table>
 
   <p><code>HTMLElement</code> nodes created as part of the mapping described above must have their
-  <code title="dom-Node-namespaceURI">namespaceURI</code> set to the <span>HTML namespace</span>,
-  and, if the corresponding <span>WebVTT Internal Node Object</span> has any <span title="WebVTT
-  Node Object's applicable classes">applicable classes</span>, must have a <code
+  <code title="dom-Node-namespaceURI">namespaceURI</code> set to the <a>HTML namespace</a>,
+  and, if the corresponding <a>WebVTT Internal Node Object</a> has any <a title="WebVTT
+  Node Object's applicable classes">applicable classes</a>, must have a <code
   title="attr-class">class</code> attribute set to the string obtained by concatenating all those
   classes, each separated from the next by a single U+0020 SPACE character.</p>
 
@@ -2897,9 +2906,9 @@
 
   <ol>
 
-   <li><p>Let <var title="">nodes</var> be the <span>list of WebVTT Node Objects</span> obtained by
-   applying the <span>WebVTT cue text parsing rules</span> to the <var title="">cue</var>'s
-   <span>text track cue text</span>.</p>
+   <li><p>Let <var title="">nodes</var> be the <a>List of WebVTT Node Objects</a> obtained by
+   applying the <a>WebVTT cue text parsing rules</a> to the <var title="">cue</var>'s
+   <a>text track cue text</a>.</p>
 
    <li><p class="XXX">... <!-- flatten nodes and return a single string somehow -->
 
@@ -2913,16 +2922,16 @@
   <h4>Processing model</h4>
 
   <p>The <dfn>rules for updating the display of WebVTT text
-  tracks</dfn> render the <span title="text track">text
-  tracks</span> of a <span>media element</span> (specifically, a
+  tracks</dfn> render the <a title="text track">text
+  tracks</a> of a <a>media element</a> (specifically, a
   <code>video</code> element), or of another playback mechanism, by
-  applying the steps below. All the <span title="text track">text
-  tracks</span> that use these rules for a given <span>media
-  element</span>, or other playback mechanism, are rendered together,
+  applying the steps below. All the <a title="text track">text
+  tracks</a> that use these rules for a given <a>media
+  element</a>, or other playback mechanism, are rendered together,
   to avoid overlapping subtitles from multiple tracks.</p>
 
   <p>The output of the steps below is a set of CSS boxes that covers
-  the rendering area of the <span>media element</span> or other
+  the rendering area of the <a>media element</a> or other
   playback mechanism, which user agents are expected to render in a
   manner suiting the user.</p>
 
@@ -2930,73 +2939,73 @@
 
   <ol>
 
-   <li><p>If the <span>media element</span> is an <code>audio</code>
+   <li><p>If the <a>media element</a> is an <code>audio</code>
    element, or is another playback mechanism with no rendering area,
    abort these steps. There is nothing to render.</p></li>
 
-   <li><p>Let <var title="">video</var> be the <span>media
-   element</span> or other playback mechanism.</p></li>
+   <li><p>Let <var title="">video</var> be the <a>media
+   element</a> or other playback mechanism.</p></li>
 
    <li><p>Let <var title="">output</var> be an empty list of
    absolutely positioned CSS block boxes.</p></li>
 
-   <li><p>If the user agent is <span title="expose a user interface to
-   the user">exposing a user interface</span> for <var
+   <li><p>If the user agent is <a title="expose a user interface to
+   the user">exposing a user interface</a> for <var
    title="">video</var>, add to <var title="">output</var> one or more
    completely transparent positioned CSS block boxes that cover the
    same region as the user interface.</p>
 
    <li><p>If the last time these rules were run, the user agent was
-   not <span title="expose a user interface to the user">exposing a
-   user interface</span> for <var title="">video</var>, but now it is,
+   not <a title="expose a user interface to the user">exposing a
+   user interface</a> for <var title="">video</var>, but now it is,
    optionally let <var title="">reset</var> be true. Otherwise, let <var
    title="">reset</var> be false.</p>
 
    <li><p>Let <var title="">tracks</var> be the subset of <var
-   title="">video</var>'s <span>list of text tracks</span> that have
-   as their <span>rules for updating the text track rendering</span>
-   these <span>rules for updating the display of WebVTT text
-   tracks</span>, and whose <span>text track mode</span> is <span
-   title="text track showing">showing</span>.</p></li>
-
-   <li><p>Let <var title="">cues</var> be an empty list of <span
-   title="text track cue">text track cues</span>.</p></li>
+   title="">video</var>'s <a>list of text tracks</a> that have
+   as their <a>rules for updating the text track rendering</a>
+   these <a>rules for updating the display of WebVTT text
+   tracks</a>, and whose <a>text track mode</a> is <a
+   title="text track showing">showing</a>.</p></li>
+
+   <li><p>Let <var title="">cues</var> be an empty list of <a
+   title="text track cue">text track cues</a>.</p></li>
 
    <li><p>For each track <var title="">track</var> in <var
    title="">tracks</var>, append to <var title="">cues</var> all the
-   <span title="text track cue">cues</span> from <var
-   title="">track</var>'s <span title="text track list of cues">list
-   of cues</span> that have their <span>text track cue active
-   flag</span> set.</p></li>
+   <a title="text track cue">cues</a> from <var
+   title="">track</var>'s <a title="text track list of cues">list
+   of cues</a> that have their <a>text track cue active
+   flag</a> set.</p></li>
 
    <li><p>If <var title="">reset</var> is false, then, for each
-   <span>text track cue</span> <var title="">cue</var> in <var
-   title="">cues</var>: if <var title="">cue</var>'s <span>text track
-   cue display state</span> has a set of CSS boxes, then add those
+   <a>text track cue</a> <var title="">cue</var> in <var
+   title="">cues</var>: if <var title="">cue</var>'s <a>text track
+   cue display state</a> has a set of CSS boxes, then add those
    boxes to <var title="">output</var>, and remove <var
    title="">cue</var> from <var title="">cues</var>.</p></li>
 
    <li>
 
-    <p>For each <span>text track cue</span> <var title="">cue</var>
+    <p>For each <a>text track cue</a> <var title="">cue</var>
     in <var title="">cues</var> that has not yet had corresponding CSS
-    boxes added to <var title="">output</var>, in <span>text track
-    cue order</span>, run the following substeps:</p>
+    boxes added to <var title="">output</var>, in <a>text track
+    cue order</a>, run the following substeps:</p>
 
     <ol>
 
-     <li><p>Let <var title="">nodes</var> be the <span>list of WebVTT
-     Node Objects</span> obtained by applying the <span>WebVTT cue
-     text parsing rules</span> to the <var title="">cue</var>'s
-     <span>text track cue text</span>.</p>
+     <li><p>Let <var title="">nodes</var> be the <a>List of WebVTT
+     Node Objects</a> obtained by applying the <a>WebVTT cue
+     text parsing rules</a> to the <var title="">cue</var>'s
+     <a>text track cue text</a>.</p>
 
      <li>
 
       <p>Apply the Unicode Bidirectional Algorithm's Paragraph Level
-      steps to the concatenation of the values of each <span>WebVTT
-      Text Object</span> in <var title="">nodes</var>, in a pre-order,
-      depth-first traversal, excluding <span title="WebVTT Ruby Text
-      Object">WebVTT Ruby Text Objects</span> and their descendants,
+      steps to the concatenation of the values of each <a>WebVTT
+      Text Object</a> in <var title="">nodes</var>, in a pre-order,
+      depth-first traversal, excluding <a title="WebVTT Ruby Text
+      Object">WebVTT Ruby Text Objects</a> and their descendants,
       to determine the <i>paragraph embedding level</i> of the first
       Unicode paragraph of the cue. <a href="#refsBIDI">[BIDI]</a></p>
 
@@ -3015,17 +3024,17 @@
 
      </li>
 
-     <li><p>If the <span>text track cue writing direction</span> is
-     <span title="text track cue horizontal writing
-     direction">horizontal</span>, then let <var
+     <li><p>If the <a>Text track cue writing direction</a> is
+     <a title="text track cue horizontal writing
+     direction">horizontal</a>, then let <var
      title="">writing-mode</var> be 'horizontal-tb'. Otherwise, if the
-     <span>text track cue writing direction</span> is <span
+     <a>Text track cue writing direction</a> is <a
      title="text track cue vertical growing left writing
-     direction">vertical growing left</span>, then let <var
+     direction">vertical growing left</a>, then let <var
      title="">writing-mode</var> be 'vertical-rl'. Otherwise, the
-     <span>text track cue writing direction</span> is <span
+     <a>Text track cue writing direction</a> is <a
      title="text track cue vertical growing right writing
-     direction">vertical growing right</span>; let <var
+     direction">vertical growing right</a>; let <var
      title="">writing-mode</var> be 'vertical-lr'.</p></li>
 
      <li>
@@ -3036,66 +3045,66 @@
 
       <dl class="switch">
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue start alignment">start</span>,
-              and <var title="">direction</var> is 'ltr'</dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue end alignment">end</span>,
-              and <var title="">direction</var> is 'rtl'</dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-          and the <span>text track cue alignment</span> is <span title="text track cue left alignment">left</span></dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing left writing direction">vertical growing left</span>,
-              and the <span>text track cue alignment</span> is <span title="text track cue start alignment">start</span>
-              or <span title="text track cue left alignment">left</span></dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing right writing direction">vertical growing right</span>,
-              and the <span>text track cue alignment</span> is <span title="text track cue start alignment">start</span>
-              or <span title="text track cue left alignment">left</span></dt>
-       <dd>
-        <p>Let <var title="">maximum size</var> be the <span>text track cue text position</span> subtracted from 100.</p>
-       </dd>
-
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue end alignment">end</span>,
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue start alignment">start</a>,
               and <var title="">direction</var> is 'ltr'</dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue start alignment">start</span>,
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue end alignment">end</a>,
               and <var title="">direction</var> is 'rtl'</dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-          and the <span>text track cue alignment</span> is <span title="text track cue right alignment">right</span></dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing left writing direction">vertical growing left</span>,
-              and the <span>text track cue alignment</span> is <span title="text track cue end alignment">end</span>
-              or <span title="text track cue right alignment">right</span></dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing right writing direction">vertical growing right</span>,
-              and the <span>text track cue alignment</span> is <span title="text track cue end alignment">end</span>
-              or <span title="text track cue right alignment">right</span></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+          and the <a>Text track cue alignment</a> is <a title="text track cue left alignment">left</a></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing left writing direction">vertical growing left</a>,
+              and the <a>Text track cue alignment</a> is <a title="text track cue start alignment">start</a>
+              or <a title="text track cue left alignment">left</a></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing right writing direction">vertical growing right</a>,
+              and the <a>Text track cue alignment</a> is <a title="text track cue start alignment">start</a>
+              or <a title="text track cue left alignment">left</a></dt>
        <dd>
-        <p>Let <var title="">maximum size</var> be the <span>text track cue text position</span>.</p>
+        <p>Let <var title="">maximum size</var> be the <a>text track cue text position</a> subtracted from 100.</p>
        </dd>
 
-       <dt>If the <span>text track cue alignment</span> is <span title="text track cue middle alignment">middle</span>,
-              the <span>text track cue text position</span> is less than or equal to 50</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue end alignment">end</a>,
+              and <var title="">direction</var> is 'ltr'</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue start alignment">start</a>,
+              and <var title="">direction</var> is 'rtl'</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+          and the <a>Text track cue alignment</a> is <a title="text track cue right alignment">right</a></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing left writing direction">vertical growing left</a>,
+              and the <a>Text track cue alignment</a> is <a title="text track cue end alignment">end</a>
+              or <a title="text track cue right alignment">right</a></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing right writing direction">vertical growing right</a>,
+              and the <a>Text track cue alignment</a> is <a title="text track cue end alignment">end</a>
+              or <a title="text track cue right alignment">right</a></dt>
        <dd>
-        <p>Let <var title="">maximum size</var> be the <span>text track cue text position</span> multiplied by two.</p>
+        <p>Let <var title="">maximum size</var> be the <a>text track cue text position</a>.</p>
        </dd>
 
-       <dt>If the <span>text track cue alignment</span> is <span title="text track cue middle alignment">middle</span>,
-              the <span>text track cue text position</span> is greater than <!-- or equal to --> 50</dt>
+       <dt>If the <a>Text track cue alignment</a> is <a title="text track cue middle alignment">middle</a>,
+              the <a>text track cue text position</a> is less than or equal to 50</dt>
        <dd>
-        <p>Let <var title="">maximum size</var> be the result of subtracting <span>text track cue text position</span> from 100 and then multiplying the result by two.</p>
+        <p>Let <var title="">maximum size</var> be the <a>text track cue text position</a> multiplied by two.</p>
+       </dd>
+
+       <dt>If the <a>Text track cue alignment</a> is <a title="text track cue middle alignment">middle</a>,
+              the <a>text track cue text position</a> is greater than <!-- or equal to --> 50</dt>
+       <dd>
+        <p>Let <var title="">maximum size</var> be the result of subtracting <a>text track cue text position</a> from 100 and then multiplying the result by two.</p>
        </dd>
 
       </dl>
 
      </li>
 
-     <li><p>If the <span>text track cue size</span> is less than <var
+     <li><p>If the <a>text track cue size</a> is less than <var
      title="">maximum size</var>, then let <var title="">size</var> be
-     <span>text track cue size</span>. Otherwise, let <var
+     <a>text track cue size</a>. Otherwise, let <var
      title="">size</var> be <var title="">maximum size</var>.</p></li>
 
-     <li><p>If the <span>text track cue writing direction</span> is
-     <span title="text track cue horizontal writing
-     direction">horizontal</span>, then let <var title="">width</var>
+     <li><p>If the <a>Text track cue writing direction</a> is
+     <a title="text track cue horizontal writing
+     direction">horizontal</a>, then let <var title="">width</var>
      be '<var title="">size</var>&#x2009;vw' and <var
      title="">height</var> be 'auto'. Otherwise, let <var
      title="">width</var> be 'auto' and <var title="">height</var> be
@@ -3112,86 +3121,86 @@
 
       <dl class="switch">
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue start alignment">start</span>,
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue start alignment">start</a>,
               and <var title="">direction</var> is 'ltr'</dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue left alignment">left</span>,
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue left alignment">left</a>,
               and <var title="">direction</var> is 'ltr'</dt>
        <dd>
-        <p>Let <var title="">x-position</var> be the <span>text track cue text position</span>.</p>
-       </dd>
-
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue end alignment">end</span>,
-              and <var title="">direction</var> is 'rtl'</dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue left alignment">left</span>,
-              and <var title="">direction</var> is 'rtl'</dt>
-       <dd>
-        <p>Let <var title="">x-position</var> be the <span>text track cue text position</span> subtracted from 100.</p>
+        <p>Let <var title="">x-position</var> be the <a>text track cue text position</a>.</p>
        </dd>
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue end alignment">end</span>,
-              and <var title="">direction</var> is 'ltr'</dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue right alignment">right</span>,
-              and <var title="">direction</var> is 'ltr'</dt>
-       <dd>
-        <p>Let <var title="">x-position</var> be the <span>text track cue text position</span> minus <var title="">size</var>.</p>
-       </dd>
-
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue start alignment">start</span>,
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue end alignment">end</a>,
               and <var title="">direction</var> is 'rtl'</dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue right alignment">right</span>,
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue left alignment">left</a>,
               and <var title="">direction</var> is 'rtl'</dt>
        <dd>
-        <p>Let <var title="">x-position</var> be the <span>text track cue text position</span> subtracted from 100, minus <var title="">size</var>.</p>
-       </dd>
-
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing left writing direction">vertical growing left</span>,
-              and the <span>text track cue alignment</span> is <span title="text track cue start alignment">start</span>
-              or <span title="text track cue left alignment">left</span></dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing right writing direction">vertical growing right</span>,
-              and the <span>text track cue alignment</span> is <span title="text track cue start alignment">start</span>
-              or <span title="text track cue left alignment">left</span></dt>
-       <dd>
-        <p>Let <var title="">y-position</var> be the <span>text track cue text position</span>.</p>
+        <p>Let <var title="">x-position</var> be the <a>text track cue text position</a> subtracted from 100.</p>
        </dd>
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing left writing direction">vertical growing left</span>,
-              and the <span>text track cue alignment</span> is <span title="text track cue end alignment">end</span>
-              or <span title="text track cue right alignment">right</span></dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing right writing direction">vertical growing right</span>,
-              and the <span>text track cue alignment</span> is <span title="text track cue end alignment">end</span>
-              or <span title="text track cue right alignment">right</span></dt>
-       <dd>
-        <p>Let <var title="">y-position</var> be the <span>text track cue text position</span> minus <var title="">size</var>.</p>
-       </dd>
-
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue middle alignment">middle</span>,
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue end alignment">end</a>,
+              and <var title="">direction</var> is 'ltr'</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue right alignment">right</a>,
               and <var title="">direction</var> is 'ltr'</dt>
        <dd>
-        <p>Let <var title="">x-position</var> be the <span>text track cue text position</span> minus half of <var title="">size</var>.</p>
+        <p>Let <var title="">x-position</var> be the <a>text track cue text position</a> minus <var title="">size</var>.</p>
        </dd>
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              the <span>text track cue alignment</span> is <span title="text track cue middle alignment">middle</span>,
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue start alignment">start</a>,
+              and <var title="">direction</var> is 'rtl'</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue right alignment">right</a>,
               and <var title="">direction</var> is 'rtl'</dt>
        <dd>
-        <p>Let <var title="">x-position</var> be the <span>text track cue text position</span> subtracted from 100, minus half of <var title="">size</var>.</p>
+        <p>Let <var title="">x-position</var> be the <a>text track cue text position</a> subtracted from 100, minus <var title="">size</var>.</p>
        </dd>
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing left writing direction">vertical growing left</span>,
-              and the <span>text track cue alignment</span> is <span title="text track cue middle alignment">middle</span></dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing right writing direction">vertical growing right</span>,
-              and the <span>text track cue alignment</span> is <span title="text track cue middle alignment">middle</span></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing left writing direction">vertical growing left</a>,
+              and the <a>Text track cue alignment</a> is <a title="text track cue start alignment">start</a>
+              or <a title="text track cue left alignment">left</a></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing right writing direction">vertical growing right</a>,
+              and the <a>Text track cue alignment</a> is <a title="text track cue start alignment">start</a>
+              or <a title="text track cue left alignment">left</a></dt>
        <dd>
-        <p>Let <var title="">y-position</var> be the <span>text track cue text position</span> minus half of <var title="">size</var>.</p>
+        <p>Let <var title="">y-position</var> be the <a>text track cue text position</a>.</p>
+       </dd>
+
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing left writing direction">vertical growing left</a>,
+              and the <a>Text track cue alignment</a> is <a title="text track cue end alignment">end</a>
+              or <a title="text track cue right alignment">right</a></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing right writing direction">vertical growing right</a>,
+              and the <a>Text track cue alignment</a> is <a title="text track cue end alignment">end</a>
+              or <a title="text track cue right alignment">right</a></dt>
+       <dd>
+        <p>Let <var title="">y-position</var> be the <a>text track cue text position</a> minus <var title="">size</var>.</p>
+       </dd>
+
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue middle alignment">middle</a>,
+              and <var title="">direction</var> is 'ltr'</dt>
+       <dd>
+        <p>Let <var title="">x-position</var> be the <a>text track cue text position</a> minus half of <var title="">size</var>.</p>
+       </dd>
+
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              the <a>Text track cue alignment</a> is <a title="text track cue middle alignment">middle</a>,
+              and <var title="">direction</var> is 'rtl'</dt>
+       <dd>
+        <p>Let <var title="">x-position</var> be the <a>text track cue text position</a> subtracted from 100, minus half of <var title="">size</var>.</p>
+       </dd>
+
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing left writing direction">vertical growing left</a>,
+              and the <a>Text track cue alignment</a> is <a title="text track cue middle alignment">middle</a></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing right writing direction">vertical growing right</a>,
+              and the <a>Text track cue alignment</a> is <a title="text track cue middle alignment">middle</a></dt>
+       <dd>
+        <p>Let <var title="">y-position</var> be the <a>text track cue text position</a> minus half of <var title="">size</var>.</p>
        </dd>
 
       </dl>
@@ -3207,32 +3216,32 @@
 
       <dl class="switch">
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              and the <span>text track cue snap-to-lines flag</span> is set</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              and the <a>text track cue snap-to-lines flag</a> is set</dt>
        <dd>
         <p>Let <var title="">y-position</var> be zero.</p>
        </dd>
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
-              and the <span>text track cue snap-to-lines flag</span> is not set</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
+              and the <a>text track cue snap-to-lines flag</a> is not set</dt>
        <dd>
-        <p>Let <var title="">y-position</var> be the <span>text track cue computed line position</span>.</p>
+        <p>Let <var title="">y-position</var> be the <a>text track cue computed line position</a>.</p>
        </dd>
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing left writing direction">vertical growing left</span>,
-              and the <span>text track cue snap-to-lines flag</span> is set</dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing right writing direction">vertical growing right</span>,
-              and the <span>text track cue snap-to-lines flag</span> is set</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing left writing direction">vertical growing left</a>,
+              and the <a>text track cue snap-to-lines flag</a> is set</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing right writing direction">vertical growing right</a>,
+              and the <a>text track cue snap-to-lines flag</a> is set</dt>
        <dd>
         <p>Let <var title="">x-position</var> be zero.</p>
        </dd>
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing left writing direction">vertical growing left</span>,
-              and the <span>text track cue snap-to-lines flag</span> is not set</dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing right writing direction">vertical growing right</span>,
-              and the <span>text track cue snap-to-lines flag</span> is not set</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing left writing direction">vertical growing left</a>,
+              and the <a>text track cue snap-to-lines flag</a> is not set</dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing right writing direction">vertical growing right</a>,
+              and the <a>text track cue snap-to-lines flag</a> is not set</dt>
        <dd>
-        <p>Let <var title="">x-position</var> be the <span>text track cue computed line position</span>.</p>
+        <p>Let <var title="">x-position</var> be the <a>text track cue computed line position</a>.</p>
        </dd>
 
       </dl>
@@ -3244,12 +3253,12 @@
 
      <li>
 
-      <p>If the <span>text track cue snap-to-lines flag</span> is set, then run the appropriate
+      <p>If the <a>text track cue snap-to-lines flag</a> is set, then run the appropriate
       steps from the following list:</p>
 
       <dl class="switch">
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a></dt>
        <dd>
 
         <ol>
@@ -3280,8 +3289,8 @@
 
        </dd>
 
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing left writing direction">vertical growing left</span></dt>
-       <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing right writing direction">vertical growing right</span></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing left writing direction">vertical growing left</a></dt>
+       <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing right writing direction">vertical growing right</a></dt>
        <dd>
 
         <ol>
@@ -3332,18 +3341,18 @@
 
       <ul>
 
-       <li><p>The <i>document tree</i> is the tree of <span
-       title="WebVTT Node Object">WebVTT Node Objects</span> rooted at
+       <li><p>The <i>document tree</i> is the tree of <a
+       title="WebVTT Node Object">WebVTT Node Objects</a> rooted at
        <var title="">nodes</var>.</p></li>
 
        <li><p>For the purposes of processing by the CSS specification,
-       <span title="WebVTT Internal Node Object">WebVTT Internal Node
-       Objects</span> are equivalent to elements with the same
+       <a title="WebVTT Internal Node Object">WebVTT Internal Node
+       Objects</a> are equivalent to elements with the same
        contents.</p></li>
 
        <li>For the purposes of processing by the CSS
-       specification, <span title="WebVTT Text Object">WebVTT Text
-       Objects</span> are equivalent to <code>Text</code> nodes.</li>
+       specification, <a title="WebVTT Text Object">WebVTT Text
+       Objects</a> are equivalent to <code>Text</code> nodes.</li>
 
        <li>No style sheets are associated with <var
        title="">nodes</var>. (The nodes are subsequently restyled
@@ -3355,14 +3364,14 @@
        value 'inline'. This is the <dfn>WebVTT cue background
        box</dfn>.</li>
 
-       <li>Runs of children of <span title="WebVTT Ruby Object">WebVTT
-       Ruby Objects</span> that are not <span title="WebVTT Ruby Text
-       Object">WebVTT Ruby Text Objects</span> must be wrapped in
+       <li>Runs of children of <a title="WebVTT Ruby Object">WebVTT
+       Ruby Objects</a> that are not <a title="WebVTT Ruby Text
+       Object">WebVTT Ruby Text Objects</a> must be wrapped in
        anonymous boxes whose 'display' property has the value
        'ruby-base'. <a href="#refsCSSRUBY">[CSSRUBY]</a></li>
 
-       <li>Properties on <span title="WebVTT Node Object">WebVTT Node
-       Objects</span> have their values set as defined in the next
+       <li>Properties on <a title="WebVTT Node Object">WebVTT Node
+       Objects</a> have their values set as defined in the next
        section. (That section uses some of the variables whose values
        were calculated earlier in this algorithm.)</li>
 
@@ -3414,30 +3423,30 @@
 
       <dl class="switch">
 
-       <dt>If <var title="">cue</var>'s <span>text track cue snap-to-lines flag</span> is set</dt>
+       <dt>If <var title="">cue</var>'s <a>text track cue snap-to-lines flag</a> is set</dt>
 
        <dd>
 
         <p>Many of the steps in this algorithm vary according to the
-        <span>text track cue writing direction</span>. Steps labeled
+        <a>Text track cue writing direction</a>. Steps labeled
         "<strong>Horizontal</strong>" must be followed only when the
-        <span>text track cue writing direction</span> is <span
+        <a>Text track cue writing direction</a> is <a
         title="text track cue horizontal writing
-        direction">horizontal</span>, steps labeled
+        direction">horizontal</a>, steps labeled
         "<strong>Vertical</strong>" must be followed when the
-        <span>text track cue writing direction</span> is either <span
+        <a>Text track cue writing direction</a> is either <a
         title="text track cue vertical growing left writing
-        direction">vertical growing left</span> or <span title="text
+        direction">vertical growing left</a> or <a title="text
         track cue vertical growing right writing direction">vertical
-        growing right</span>, steps labeled "<strong>Vertical Growing
-        Left</strong>" must be followed only when the <span>text
-        track cue writing direction</span> is <span title="text track
+        growing right</a>, steps labeled "<strong>Vertical Growing
+        Left</strong>" must be followed only when the <a>Text
+        track cue writing direction</a> is <a title="text track
         cue vertical growing left writing direction">vertical growing
-        left</span>, and steps labeled "<strong>Vertical Growing
-        Right</strong>" must be followed only when the <span>text
-        track cue writing direction</span> is <span title="text track
+        left</a>, and steps labeled "<strong>Vertical Growing
+        Right</strong>" must be followed only when the <a>Text
+        track cue writing direction</a> is <a title="text track
         cue vertical growing right writing direction">vertical growing
-        right</span>.</p>
+        right</a>.</p>
 
         <ol>
 
@@ -3474,9 +3483,9 @@
 
          <li>
 
-          <p>Let <var title="">max dimension</var> be <span title=""><var
+          <p>Let <var title="">max dimension</var> be <var
           title="">full&nbsp;dimension</var>&nbsp;-&nbsp;(2&nbsp;&times;&nbsp;<var
-          title="">margin</var>)</span>.</p>
+          title="">margin</var>).</p>
 
          </li>
 
@@ -3496,7 +3505,7 @@
          step labeled <i>done positioning</i> below.</p></li>
 
          <li><p>Let <var title="">line position</var> be the
-         <span>text track cue computed line position</span>.</p></li>
+         <a>text track cue computed line position</a>.</p></li>
 
          <li><p><strong>Vertical Growing Left</strong>: Add one to
          <var title="">line position</var> then negate it.</p></li>
@@ -3632,7 +3641,7 @@
 
        </dd>
 
-       <dt>If <var title="">cue</var>'s <span>text track cue snap-to-lines flag</span> is not set</dt>
+       <dt>If <var title="">cue</var>'s <a>text track cue snap-to-lines flag</a> is not set</dt>
        <dd>
 
         <ol>
@@ -3644,38 +3653,38 @@
 
           <dl class="switch">
 
-           <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
+           <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
                   and <var title="">direction</var> is 'ltr'</dt>
            <dd>
             <p>Let <var title="">x</var> be a percentage given by the
-            <span>text track cue text position</span>, and let <var
-            title="">y</var> be a percentage given by the <span>text
-            track cue computed line position</span>.</p>
+            <a>text track cue text position</a>, and let <var
+            title="">y</var> be a percentage given by the <a>text
+            track cue computed line position</a>.</p>
            </dd>
 
-           <dt>If the <span>text track cue writing direction</span> is <span title="text track cue horizontal writing direction">horizontal</span>,
+           <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue horizontal writing direction">horizontal</a>,
                   and <var title="">direction</var> is 'rtl'</dt>
            <dd>
             <p>Let <var title="">x</var> be a percentage given by the
-            <span>text track cue text position</span> subtracted from
+            <a>text track cue text position</a> subtracted from
             100, and let <var title="">y</var> be a percentage given
-            by the <span>text track cue computed line position</span>.</p>
+            by the <a>text track cue computed line position</a>.</p>
            </dd>
 
-           <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing left writing direction">vertical growing left</span></dt>
+           <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing left writing direction">vertical growing left</a></dt>
            <dd>
             <p>Let <var title="">x</var> be a percentage given by the
-            <span>text track cue computed line position</span> subtracted from
+            <a>text track cue computed line position</a> subtracted from
             100, and let <var title="">y</var> be a percentage given
-            by the <span>text track cue text position</span>.</p>
+            by the <a>text track cue text position</a>.</p>
            </dd>
 
-           <dt>If the <span>text track cue writing direction</span> is <span title="text track cue vertical growing right writing direction">vertical growing right</span></dt>
+           <dt>If the <a>Text track cue writing direction</a> is <a title="text track cue vertical growing right writing direction">vertical growing right</a></dt>
            <dd>
             <p>Let <var title="">x</var> be a percentage given by the
-            <span>text track cue computed line position</span>, and let <var
-            title="">y</var> be a percentage given by the <span>text
-            track cue text position</span>.</p>
+            <a>text track cue computed line position</a>, and let <var
+            title="">y</var> be a percentage given by the <a>text
+            track cue text position</a>.</p>
            </dd>
 
           </dl>
@@ -3733,8 +3742,8 @@
      area, remove those offending line boxes from <var
      title="">boxes</var>.</p></li>
 
-     <li><p>Let <var title="">cue</var>'s <span>text track cue
-     display state</span> have the CSS boxes in <var
+     <li><p>Let <var title="">cue</var>'s <a>text track cue
+     display state</a> have the CSS boxes in <var
      title="">boxes</var>.</p></li>
 
      <li><p>Add the CSS boxes in <var title="">boxes</var> to <var
@@ -3756,15 +3765,15 @@
   </section>
 
   <section>
-  <h4>Applying CSS properties to <span title="WebVTT Node Object">WebVTT Node Objects</span></h4>
-
-  <p>When following the <span>rules for updating the display of WebVTT
-  text tracks</span>, user agents must set properties of <span
-  title="WebVTT Node Object">WebVTT Node Objects</span> at the CSS
+  <h4>Applying CSS properties to <a title="WebVTT Node Object">WebVTT Node Objects</a></h4>
+
+  <p>When following the <a>rules for updating the display of WebVTT
+  text tracks</a>, user agents must set properties of <a
+  title="WebVTT Node Object">WebVTT Node Objects</a> at the CSS
   user agent cascade layer as defined in this section. <a
   href="#refsCSS">[CSS]</a></p>
 
-  <p>On the (root) <span>List of WebVTT Node Objects</span>, the
+  <p>On the (root) <a>List of WebVTT Node Objects</a>, the
   'position' property must be set to 'absolute', the 'unicode-bidi'
   property must be set to 'plaintext', the 'direction' property must
   be set to <var title="">direction</var>, the 'writing-mode' property
@@ -3776,78 +3785,78 @@
   <var title="">writing-mode</var>, <var title="">top</var>, <var
   title="">left</var>, <var title="">width</var>, and <var
   title="">height</var> are the values with those names determined by
-  the <span>rules for updating the display of WebVTT text
-  tracks</span> for the <span>text track cue</span> from whose <span
-  title="text track cue text">text</span> the <span>List of WebVTT
-  Node Objects</span> was constructed.</p>
-
-  <p>The 'text-align' property on the (root) <span>List of WebVTT Node
-  Objects</span> must be set to the value in the second cell of the
+  the <a>rules for updating the display of WebVTT text
+  tracks</a> for the <a>text track cue</a> from whose <a
+  title="text track cue text">text</a> the <a>List of WebVTT
+  Node Objects</a> was constructed.</p>
+
+  <p>The 'text-align' property on the (root) <a>List of WebVTT Node
+  Objects</a> must be set to the value in the second cell of the
   row of the table below whose first cell is the value of the
-  corresponding <span title="text track cue">cue</span>'s <span>text
-  track cue alignment</span>:</p>
+  corresponding <a title="text track cue">cue</a>'s <a>Text
+  track cue alignment</a>:</p>
 
   <table>
    <thead>
-    <tr> <th><span>Text track cue alignment</span> <th> 'text-align' value
+    <tr> <th><a>Text track cue alignment</a> <th> 'text-align' value
    <tbody>
-    <tr> <td><span title="text track cue start alignment">Start alignment</span> <td> 'start'
-    <tr> <td><span title="text track cue middle alignment">Middle alignment</span> <td> 'center'
-    <tr> <td><span title="text track cue end alignment">End alignment</span> <td> 'end'
-    <tr> <td><span title="text track cue left alignment">Left alignment</span> <td> 'left'
-    <tr> <td><span title="text track cue right alignment">Right alignment</span> <td> 'right'
+    <tr> <td><a title="text track cue start alignment">Start alignment</a> <td> 'start'
+    <tr> <td><a title="text track cue middle alignment">Middle alignment</a> <td> 'center'
+    <tr> <td><a title="text track cue end alignment">End alignment</a> <td> 'end'
+    <tr> <td><a title="text track cue left alignment">Left alignment</a> <td> 'left'
+    <tr> <td><a title="text track cue right alignment">Right alignment</a> <td> 'right'
   </table>
 
-  <p>The 'font' shorthand property on the (root) <span>List of WebVTT
-  Node Objects</span> must be set to '5vh sans-serif'. <a
+  <p>The 'font' shorthand property on the (root) <a>List of WebVTT
+  Node Objects</a> must be set to '5vh sans-serif'. <a
   href="#refsCSSRUBY">[CSSRUBY]</a> <a
   href="#refsCSSVALUES">[CSSVALUES]</a></p>
 
-  <p>The 'color' property on the (root) <span>List of WebVTT Node
-  Objects</span> must be set to 'rgba(255,255,255,1)'. <a
-  href="#refsCSSCOLOR">[CSSCOLOR]</a></p>
-
-  <p>The 'background' shorthand property on the <span>WebVTT cue
-  background box</span> must be set to 'rgba(0,0,0,0.8)'. <a
+  <p>The 'color' property on the (root) <a>List of WebVTT Node
+  Objects</a> must be set to 'rgba(255,255,255,1)'. <a
   href="#refsCSSCOLOR">[CSSCOLOR]</a></p>
 
-  <p>A text outline or stroke may also be set on the (root) <span>List
-  of WebVTT Node Objects</span>, if supported.</p> <!-- 'text-outline'
+  <p>The 'background' shorthand property on the <a>WebVTT cue
+  background box</a> must be set to 'rgba(0,0,0,0.8)'. <a
+  href="#refsCSSCOLOR">[CSSCOLOR]</a></p>
+
+  <p>A text outline or stroke may also be set on the (root) <a>List
+  of WebVTT Node Objects</a>, if supported.</p> <!-- 'text-outline'
   is in CSS3 Text, but Tab says that's awaiting medical attention. -->
 
-  <p>The 'white-space' property on the (root) <span>List of WebVTT
-  Node Objects</span> must be set to 'pre-line'. <a
+  <p>The 'white-space' property on the (root) <a>List of WebVTT
+  Node Objects</a> must be set to 'pre-line'. <a
   href="#refsCSS">[CSS]</a></p>
 
-  <p>The 'font-style' property on <span title="WebVTT Italic
-  Object">WebVTT Italic Objects</span> must be set to 'italic'.</p>
-
-  <p>The 'font-weight' property on <span title="WebVTT Bold
-  Object">WebVTT Bold Objects</span> must be set to 'bold'.</p>
-
-  <p>The 'text-decoration' property on <span title="WebVTT Underline
-  Object">WebVTT Underline Objects</span> must be set to 'underline'.</p>
-
-  <p>The 'display' property on <span title="WebVTT Ruby Object">WebVTT
-  Ruby Objects</span> must be set to 'ruby'. <a
+  <p>The 'font-style' property on <a title="WebVTT Italic
+  Object">WebVTT Italic Objects</a> must be set to 'italic'.</p>
+
+  <p>The 'font-weight' property on <a title="WebVTT Bold
+  Object">WebVTT Bold Objects</a> must be set to 'bold'.</p>
+
+  <p>The 'text-decoration' property on <a title="WebVTT Underline
+  Object">WebVTT Underline Objects</a> must be set to 'underline'.</p>
+
+  <p>The 'display' property on <a title="WebVTT Ruby Object">WebVTT
+  Ruby Objects</a> must be set to 'ruby'. <a
   href="#refsCSSRUBY">[CSSRUBY]</a></p>
 
-  <p>The 'display' property on <span title="WebVTT Ruby Text
-  Object">WebVTT Ruby Text Objects</span> must be set to
+  <p>The 'display' property on <a title="WebVTT Ruby Text
+  Object">WebVTT Ruby Text Objects</a> must be set to
   'ruby-text'. <a href="#refsCSSRUBY">[CSSRUBY]</a></p>
 
   <p>All other non-inherited properties must be set to their initial
-  values; inherited properties on the root <span>List of WebVTT Node
-  Objects</span> must inherit their values from the <span>media
-  element</span> for which the <span>text track cue</span> is being
-  rendered, if any. If there is no <span>media element</span> (i.e. if
-  the <span>text track</span> is being rendered for another media
+  values; inherited properties on the root <a>List of WebVTT Node
+  Objects</a> must inherit their values from the <a>media
+  element</a> for which the <a>text track cue</a> is being
+  rendered, if any. If there is no <a>media element</a> (i.e. if
+  the <a>text track</a> is being rendered for another media
   playback mechanism), then inherited properties on the root
-  <span>List of WebVTT Node Objects</span> must take their initial
+  <a>List of WebVTT Node Objects</a> must take their initial
   values.</p>
 
-  <p>If there are style sheets that apply to the <span>media
-  element</span> or other playback mechanism, then they must be
+  <p>If there are style sheets that apply to the <a>media
+  element</a> or other playback mechanism, then they must be
   interpreted as defined in the next section.</p>
 
   </section>
@@ -3855,47 +3864,47 @@
   <section>
   <h4>CSS extensions</h4>
 
-  <p>When a user agent is rendering one or more <span title="text track cue">text track cues</span>
-  according to the <span>rules for updating the display of WebVTT text tracks</span>, <span
-  title="WebVTT Node Object">WebVTT Node Objects</span> in the <span>list of WebVTT Node
-  Objects</span> used in the rendering can be matched by certain pseudo-selectors as defined below.
-  These selectors can begin or stop matching individual <span title="WebVTT Node Object">WebVTT Node
-  Objects</span> while a <span title="text track cue">cue</span> is being rendered, even in between
-  applications of the <span>rules for updating the display of WebVTT text tracks</span> (which are
+  <p>When a user agent is rendering one or more <a title="text track cue">text track cues</a>
+  according to the <a>rules for updating the display of WebVTT text tracks</a>, <a
+  title="WebVTT Node Object">WebVTT Node Objects</a> in the <a>List of WebVTT Node
+  Objects</a> used in the rendering can be matched by certain pseudo-selectors as defined below.
+  These selectors can begin or stop matching individual <a title="WebVTT Node Object">WebVTT Node
+  Objects</a> while a <a title="text track cue">cue</a> is being rendered, even in between
+  applications of the <a>rules for updating the display of WebVTT text tracks</a> (which are
   only run when the set of active cues changes). User agents that support the pseudo-element
   described below must dynamically update renderings accordingly. When either 'white-space' or one
   of the properties corresponding to the 'font' shorthand (including 'line-height') changes value,
-  then the <span>text track cue</span>'s <span>text track cue display state</span> must be emptied
-  and the <span>text track</span>'s <span>rules for updating the text track rendering</span> must be
+  then the <a>text track cue</a>'s <a>text track cue display state</a> must be emptied
+  and the <a>text track</a>'s <a>rules for updating the text track rendering</a> must be
   immediately rerun.</p>
 
   <p>Pseudo-elements apply to elements that are matched by
   selectors. For the purpose of this section, that element is the
   <i>matched element</i>. The pseudo-elements defined in the following
-  sections affect the styling of parts of <span title="text track
-  cue">text track cues</span> that are being rendered for the
+  sections affect the styling of parts of <a title="text track
+  cue">text track cues</a> that are being rendered for the
   <i>matched element</i>.</p>
 
   <p class="note">If the <i>matched element</i> is not a
   <code>video</code> element, the pseudo-elements defined below won't
   have any effect according to this specification.</p>
 
-  <p>A CSS user agent that implements the <span title="text
-  track">text tracks</span> model must implement the '::cue' and
-  '::cue(<var title="">selector</var>)' pseudo-elements, and the <span
-  title="past-pseudo-class">':past'</span> and <span
-  title="future-pseudo-class">':future'</span> pseudo-classes.</p>
+  <p>A CSS user agent that implements the <a title="text
+  track">text tracks</a> model must implement the '::cue' and
+  '::cue(<var title="">selector</var>)' pseudo-elements, and the <a
+  title="past-pseudo-class">':past'</a> and <a
+  title="future-pseudo-class">':future'</a> pseudo-classes.</p>
 
 
   <section>
   <h5>The '::cue' pseudo-element</h5>
 
   <p>The '<dfn title="pseudo-cue">::cue</dfn>' pseudo-element (with no
-  argument) matches any <span>List of WebVTT Node Objects</span>
+  argument) matches any <a>List of WebVTT Node Objects</a>
   constructed for the <i>matched element</i>, with the exception that
   the properties corresponding to the 'background' shorthand must be
-  applied to the <span>WebVTT cue background box</span> rather than
-  the <span>List of WebVTT Node Objects</span>.</p>
+  applied to the <a>WebVTT cue background box</a> rather than
+  the <a>List of WebVTT Node Objects</a>.</p>
 
   <p>The following properties apply to the '::cue' pseudo-element with
   no argument; other properties set on the pseudo-element must be
@@ -3925,28 +3934,28 @@
   <p>The '<dfn title="pseudo-cue-selector">::cue(<var
   title="">selector</var>)</dfn>' pseudo-element with an argument must
   have an argument that consists of a group of selectors. It matches
-  any <span>WebVTT Internal Node Object</span> constructed for the
+  any <a>WebVTT Internal Node Object</a> constructed for the
   <i>matched element</i> that also matches the given group of
   selectors, with the nodes being treated as follows:</p>
 
   <ul>
 
    <li><p>The <i>document tree</i> against which the selectors are
-   matched is the tree of <span title="WebVTT Node Object">WebVTT Node
-   Objects</span> rooted at the <span>list of WebVTT Node
-   Objects</span> for the cue.</p></li>
-
-   <li><p><span title="WebVTT Internal Node Object">WebVTT Internal
-   Node Objects</span> are elements in the tree.</p></li>
-
-   <li><span title="WebVTT Leaf Node Object">WebVTT Leaf Node
-   Objects</span> cannot be matched.</li>
+   matched is the tree of <a title="WebVTT Node Object">WebVTT Node
+   Objects</a> rooted at the <a>List of WebVTT Node
+   Objects</a> for the cue.</p></li>
+
+   <li><p><a title="WebVTT Internal Node Object">WebVTT Internal
+   Node Objects</a> are elements in the tree.</p></li>
+
+   <li><a title="WebVTT Leaf Node Object">WebVTT Leaf Node
+   Objects</a> cannot be matched.</li>
 
    <li>
 
-    <p>For the purposes of element type selectors, the names of <span
+    <p>For the purposes of element type selectors, the names of <a
     title="WebVTT Internal Node Object">WebVTT Internal Node
-    Objects</span> are as given by the following table, where objects
+    Objects</a> are as given by the following table, where objects
     having the concrete class given in a cell in the first column have
     the name given by the second column of the same row:</p>
 
@@ -3959,39 +3968,39 @@
 
      <tbody>
       <tr>
-       <td><span title="WebVTT Class Object">WebVTT Class Objects</span>
+       <td><a title="WebVTT Class Object">WebVTT Class Objects</a>
        <td><code title="">c</code>
 
       <tr>
-       <td><span title="WebVTT Italic Object">WebVTT Italic Objects</span>
+       <td><a title="WebVTT Italic Object">WebVTT Italic Objects</a>
        <td><code title="">i</code>
 
       <tr>
-       <td><span title="WebVTT Bold Object">WebVTT Bold Objects</span>
+       <td><a title="WebVTT Bold Object">WebVTT Bold Objects</a>
        <td><code title="">b</code>
 
       <tr>
-       <td><span title="WebVTT Underline Object">WebVTT Underline Objects</span>
+       <td><a title="WebVTT Underline Object">WebVTT Underline Objects</a>
        <td><code title="">u</code>
 
       <tr>
-       <td><span title="WebVTT Ruby Object">WebVTT Ruby Objects</span>
+       <td><a title="WebVTT Ruby Object">WebVTT Ruby Objects</a>
        <td><code title="">ruby</code>
 
       <tr>
-       <td><span title="WebVTT Ruby Text Object">WebVTT Ruby Text Objects</span>
+       <td><a title="WebVTT Ruby Text Object">WebVTT Ruby Text Objects</a>
        <td><code title="">rt</code>
 
       <tr>
-       <td><span title="WebVTT Voice Object">WebVTT Voice Objects</span>
+       <td><a title="WebVTT Voice Object">WebVTT Voice Objects</a>
        <td><code title="">v</code>
 
       <tr>
-       <td><span title="WebVTT Language Object">WebVTT Language Objects</span>
+       <td><a title="WebVTT Language Object">WebVTT Language Objects</a>
        <td><code title="">lang</code>
 
       <tr>
-       <td>Other elements (specifically, <span title="List of WebVTT Node Objects">Lists of WebVTT Node Objects</span>)
+       <td>Other elements (specifically, <a title="List of WebVTT Node Objects">Lists of WebVTT Node Objects</a>)
        <td>No explicit name.
 
     </table>
@@ -3999,32 +4008,32 @@
    </li>
 
    <li><p>For the purposes of element type and universal selectors,
-   <span title="WebVTT Internal Node Object">WebVTT Internal Node
-   Objects</span> are considered as being in the namespace expressed
+   <a title="WebVTT Internal Node Object">WebVTT Internal Node
+   Objects</a> are considered as being in the namespace expressed
    as the empty string.</p></li>
 
-   <li><p>For the purposes of attribute selector matching, <span title="WebVTT Internal Node
-   Object">WebVTT Internal Node Objects</span> have no attributes, except for <span title="WebVTT
-   Voice Object">WebVTT Voice Objects</span>, which have a single attribute named "<code
-   title="">voice</code>" whose value is the value of the <span>WebVTT Voice Object</span>, and
-   <span title="WebVTT Language Object">WebVTT Language Objects</span>, which have a single
-   attribute named "<code title="">lang</code>" whose value is the object's <span title="WebVTT Node
-   Object's applicable language">applicable language</span>.</p></li>
-
-   <li><p>For the purposes of class selector matching, <span
+   <li><p>For the purposes of attribute selector matching, <a title="WebVTT Internal Node
+   Object">WebVTT Internal Node Objects</a> have no attributes, except for <a title="WebVTT
+   Voice Object">WebVTT Voice Objects</a>, which have a single attribute named "<code
+   title="">voice</code>" whose value is the value of the <a>WebVTT Voice Object</a>, and
+   <a title="WebVTT Language Object">WebVTT Language Objects</a>, which have a single
+   attribute named "<code title="">lang</code>" whose value is the object's <a title="WebVTT Node
+   Object's applicable language">applicable language</a>.</p></li>
+
+   <li><p>For the purposes of class selector matching, <a
    title="WebVTT Internal Node Object">WebVTT Internal Node
-   Objects</span> have the classes described as the <span>WebVTT
-   Node Object's applicable classes</span>.</p></li> <!-- ok, this
+   Objects</a> have the classes described as the <a>WebVTT
+   Node Object's applicable classes</a>.</p></li> <!-- ok, this
    isn't especially well-defined, but the Selectors spec doesn't
    really give one much to go on here. -->
 
-   <li><p>For the purposes of the <code title="selector-lang">:lang()</code> pseudo-class, <span
-   title="WebVTT Internal Node Object">WebVTT Internal Node Objects</span> have the language
-   described as the <span>WebVTT Node Object's applicable language</span>.</p></li>
-
-   <li><p>For the purposes of ID selector matching, <span title="List
-   of WebVTT Node Objects">Lists of WebVTT Node Objects</span> have
-   the ID given by the cue's <span>text track cue identifier</span>,
+   <li><p>For the purposes of the <code title="selector-lang">:lang()</code> pseudo-class, <a
+   title="WebVTT Internal Node Object">WebVTT Internal Node Objects</a> have the language
+   described as the <a>WebVTT Node Object's applicable language</a>.</p></li>
+
+   <li><p>For the purposes of ID selector matching, <a title="List
+   of WebVTT Node Objects">Lists of WebVTT Node Objects</a> have
+   the ID given by the cue's <a>text track cue identifier</a>,
    if any.</p></li>
 
   </ul>
@@ -4056,8 +4065,8 @@
 
   <p>In addition, the following properties apply to the '::cue()'
   pseudo-element with an argument when the selector does not contain
-  the <span title="past-pseudo-class">':past'</span> and <span
-  title="future-pseudo-class">':future'</span> pseudo-classes:</p>
+  the <a title="past-pseudo-class">':past'</a> and <a
+  title="future-pseudo-class">':future'</a> pseudo-classes:</p>
 
   <ul class="brief">
    <li>the properties corresponding to the 'font' shorthand, including 'line-height'</li>
@@ -4076,44 +4085,44 @@
 
   <p>As a special exception, the properties corresponding to the
   'background' shorthand, when they would have been applied to the
-  <span>List of WebVTT Node Objects</span>, must instead be applied to
-  the <span>WebVTT cue background box</span>.</p>
+  <a>List of WebVTT Node Objects</a>, must instead be applied to
+  the <a>WebVTT cue background box</a>.</p>
 
   </section>
 
   <section>
   <h5>The ':past' and ':future' pseudo-classes</h5>
 
-  <p>The <span title="past-pseudo-class">':past'</span> and <span
-  title="future-pseudo-class">':future'</span> pseudo-classes
-  sometimes match <span title="WebVTT Node Object">WebVTT Node
-  Objects</span>. <a href="#refsSELECTORS">[SELECTORS]</a></p>
+  <p>The <a title="past-pseudo-class">':past'</a> and <a
+  title="future-pseudo-class">':future'</a> pseudo-classes
+  sometimes match <a title="WebVTT Node Object">WebVTT Node
+  Objects</a>. <a href="#refsSELECTORS">[SELECTORS]</a></p>
 
   <p>The <dfn title="past-pseudo-class">':past'</dfn> pseudo-class
-  only matches <span title="WebVTT Node Object">WebVTT Node
-  Objects</span> that are <i>in the past</i>.</p>
-
-  <p>A <span>WebVTT Node Object</span> <var title="">c</var> is
+  only matches <a title="WebVTT Node Object">WebVTT Node
+  Objects</a> that are <i>in the past</i>.</p>
+
+  <p>A <a>WebVTT Node Object</a> <var title="">c</var> is
   <dfn>in the past</dfn> if, in a pre-order, depth-first traversal of
-  the <span>text track cue</span>'s <span>List of WebVTT Node
-  Objects</span>, there exists a <span>WebVTT Timestamp Object</span>
-  whose value is less than the <span>current playback position</span>
-  of the <span>media element</span> that is the <i>matched
-  element</i>, entirely after the <span>WebVTT Node Object</span> <var
+  the <a>text track cue</a>'s <a>List of WebVTT Node
+  Objects</a>, there exists a <a>WebVTT Timestamp Object</a>
+  whose value is less than the <a>current playback position</a>
+  of the <a>media element</a> that is the <i>matched
+  element</i>, entirely after the <a>WebVTT Node Object</a> <var
   title="">c</var>.</p>
 
   <p>The <dfn title="future-pseudo-class">':future'</dfn> pseudo-class
-  only matches <span title="WebVTT Node Object">WebVTT Node
-  Objects</span> that are <i>in the future</i>.</p>
-
-  <p>A <span>WebVTT Node Object</span> <var title="">c</var> is
+  only matches <a title="WebVTT Node Object">WebVTT Node
+  Objects</a> that are <i>in the future</i>.</p>
+
+  <p>A <a>WebVTT Node Object</a> <var title="">c</var> is
   <dfn>in the future</dfn> if, in a pre-order, depth-first traversal
-  of the <span>text track cue</span>'s <span>List of WebVTT Node
-  Objects</span>, there exists a <span>WebVTT Timestamp Object</span>
-  whose value is greater than the <span>current playback
-  position</span> of the <span>media element</span> that is the
-  <i>matched element</i>, entirely before the <span>WebVTT Node
-  Object</span> <var title="">c</var>.</p>
+  of the <a>text track cue</a>'s <a>List of WebVTT Node
+  Objects</a>, there exists a <a>WebVTT Timestamp Object</a>
+  whose value is greater than the <a>current playback
+  position</a> of the <a>media element</a> that is the
+  <i>matched element</i>, entirely before the <a>WebVTT Node
+  Object</a> <var title="">c</var>.</p>
   </section>
 
   </section>
@@ -4128,16 +4137,16 @@
   <p>The following interface is used to expose WebVTT cues in the DOM API:</p>
 
   <pre class="idl_whatwg">enum <dfn>AutoKeyword</dfn> { "auto" };
-[<span title="dom-TextTrackCue">Constructor</span>(double startTime, double endTime, DOMString text)]
-interface <dfn>WebVTTCue</dfn> : <span>TextTrackCue</span> {
-           attribute DOMString <span title="dom-TextTrackCue-vertical">vertical</span>;
-           attribute boolean <span title="dom-TextTrackCue-snapToLines">snapToLines</span>;
-           attribute (long or <span>AutoKeyword</span>) <span title="dom-TextTrackCue-line">line</span>;
-           attribute long <span title="dom-TextTrackCue-position">position</span>;
-           attribute long <span title="dom-TextTrackCue-size">size</span>;
-           attribute DOMString <span title="dom-TextTrackCue-align">align</span>;
-           attribute DOMString <span title="dom-TextTrackCue-text">text</span>;
-  <span>DocumentFragment</span> <span title="dom-TextTrackCue-getCueAsHTML">getCueAsHTML</span>();
+[<a title="dom-TextTrackCue">Constructor</a>(double startTime, double endTime, DOMString text)]
+interface <dfn>WebVTTCue</dfn> : <a>TextTrackCue</a> {
+           attribute DOMString <a title="dom-TextTrackCue-vertical">vertical</a>;
+           attribute boolean <a title="dom-TextTrackCue-snapToLines">snapToLines</a>;
+           attribute (long or <a>AutoKeyword</a>) <a title="dom-TextTrackCue-line">line</a>;
+           attribute long <a title="dom-TextTrackCue-position">position</a>;
+           attribute long <a title="dom-TextTrackCue-size">size</a>;
+           attribute DOMString <a title="dom-TextTrackCue-align">align</a>;
+           attribute DOMString <a title="dom-TextTrackCue-text">text</a>;
+  DocumentFragment <a title="dom-TextTrackCue-getCueAsHTML">getCueAsHTML</a>();
 };</pre>
 
   <dl class="domintro">
@@ -4145,79 +4154,79 @@
    <dt><var title="">cue</var> = new <code title="dom-TextTrackCue">WebVTTCue</code>( <var title="">startTime</var>, <var title="">endTime</var>, <var title="">text</var> )</dt>
    <dd>
     <p>Returns a new <code>TextTrackCue</code> object, for use with the <code title="dom-TextTrack-addCue">addCue()</code> method.</p>
-    <p>The <var title="">startTime</var> argument sets the <span>text track cue start time</span>.</p>
-    <p>The <var title="">endTime</var> argument sets the <span>text track cue end time</span>.</p>
-    <p>The <var title="">text</var> argument sets the <span>text track cue text</span>.</p>
+    <p>The <var title="">startTime</var> argument sets the <a>text track cue start time</a>.</p>
+    <p>The <var title="">endTime</var> argument sets the <a>text track cue end time</a>.</p>
+    <p>The <var title="">text</var> argument sets the <a>text track cue text</a>.</p>
    </dd>
 
-   <dt><var title="">cue</var> . <span title="dom-TextTrackCue-vertical">vertical</span> [ = <var title="">value</var> ]</dt>
+   <dt><var title="">cue</var> . <a title="dom-TextTrackCue-vertical">vertical</a> [ = <var title="">value</var> ]</dt>
    <dd>
-    <p>Returns a string representing the <span>text track cue writing direction</span>, as follows:</p>
+    <p>Returns a string representing the <a>Text track cue writing direction</a>, as follows:</p>
     <dl class="switch">
-     <dt>If it is <span title="text track cue horizontal writing direction">horizontal</span></dt>
+     <dt>If it is <a title="text track cue horizontal writing direction">horizontal</a></dt>
      <dd><p>The empty string.</p></dd>
-     <dt>If it is <span title="text track cue vertical growing left writing direction">vertical growing left</span></dt>
+     <dt>If it is <a title="text track cue vertical growing left writing direction">vertical growing left</a></dt>
      <dd><p>The string "<code title="">rl</code>".</p></dd>
-     <dt>If it is <span title="text track cue vertical growing right writing direction">vertical growing right</span></dt>
+     <dt>If it is <a title="text track cue vertical growing right writing direction">vertical growing right</a></dt>
      <dd><p>The string "<code title="">lr</code>".</p></dd>
     </dl>
     <p>Can be set.</p>
    </dd>
 
-   <dt><var title="">cue</var> . <span title="dom-TextTrackCue-snapToLines">snapToLines</span> [ = <var title="">value</var> ]</dt>
+   <dt><var title="">cue</var> . <a title="dom-TextTrackCue-snapToLines">snapToLines</a> [ = <var title="">value</var> ]</dt>
    <dd>
-    <p>Returns true if the <span>text track cue snap-to-lines flag</span> is set, false otherwise.</p>
+    <p>Returns true if the <a>text track cue snap-to-lines flag</a> is set, false otherwise.</p>
     <p>Can be set.</p>
    </dd>
 
-   <dt><var title="">cue</var> . <span title="dom-TextTrackCue-line">line</span> [ = <var title="">value</var> ]</dt>
+   <dt><var title="">cue</var> . <a title="dom-TextTrackCue-line">line</a> [ = <var title="">value</var> ]</dt>
    <dd>
-    <p>Returns the <span>text track cue line position</span>. In the
-    case of the value being <span title="text track cue automatic line
-    position">auto</span>, the string "<code title="">auto</code>" is
+    <p>Returns the <a>text track cue line position</a>. In the
+    case of the value being <a title="text track cue automatic line
+    position">auto</a>, the string "<code title="">auto</code>" is
     returned.</p>
     <p>Can be set.</p>
    </dd>
 
-   <dt><var title="">cue</var> . <span title="dom-TextTrackCue-position">position</span> [ = <var title="">value</var> ]</dt>
+   <dt><var title="">cue</var> . <a title="dom-TextTrackCue-position">position</a> [ = <var title="">value</var> ]</dt>
    <dd>
-    <p>Returns the <span>text track cue text position</span>.</p>
-    <p>Can be set.</p>
-   </dd>
-
-   <dt><var title="">cue</var> . <span title="dom-TextTrackCue-size">size</span> [ = <var title="">value</var> ]</dt>
-   <dd>
-    <p>Returns the <span>text track cue size</span>.</p>
+    <p>Returns the <a>text track cue text position</a>.</p>
     <p>Can be set.</p>
    </dd>
 
-   <dt><var title="">cue</var> . <span title="dom-TextTrackCue-align">align</span> [ = <var title="">value</var> ]</dt>
+   <dt><var title="">cue</var> . <a title="dom-TextTrackCue-size">size</a> [ = <var title="">value</var> ]</dt>
    <dd>
-    <p>Returns a string representing the <span>text track cue alignment</span>, as follows:</p>
+    <p>Returns the <a>text track cue size</a>.</p>
+    <p>Can be set.</p>
+   </dd>
+
+   <dt><var title="">cue</var> . <a title="dom-TextTrackCue-align">align</a> [ = <var title="">value</var> ]</dt>
+   <dd>
+    <p>Returns a string representing the <a>Text track cue alignment</a>, as follows:</p>
     <dl class="switch">
-     <dt>If it is <span title="text track cue start alignment">start alignment</span></dt>
+     <dt>If it is <a title="text track cue start alignment">start alignment</a></dt>
      <dd><p>The string "<code title="">start</code>".</p></dd>
-     <dt>If it is <span title="text track cue middle alignment">middle alignment</span></dt>
+     <dt>If it is <a title="text track cue middle alignment">middle alignment</a></dt>
      <dd><p>The string "<code title="">middle</code>".</p></dd>
-     <dt>If it is <span title="text track cue end alignment">end alignment</span></dt>
+     <dt>If it is <a title="text track cue end alignment">end alignment</a></dt>
      <dd><p>The string "<code title="">end</code>".</p></dd>
-     <dt>If it is <span title="text track cue left alignment">left alignment</span></dt>
+     <dt>If it is <a title="text track cue left alignment">left alignment</a></dt>
      <dd><p>The string "<code title="">left</code>".</p></dd>
-     <dt>If it is <span title="text track cue right alignment">right alignment</span></dt>
+     <dt>If it is <a title="text track cue right alignment">right alignment</a></dt>
      <dd><p>The string "<code title="">right</code>".</p></dd>
     </dl>
     <p>Can be set.</p>
    </dd>
 
-   <dt><var title="">cue</var> . <span title="dom-TextTrackCue-text">text</span> [ = <var title="">value</var> ]</dt>
+   <dt><var title="">cue</var> . <a title="dom-TextTrackCue-text">text</a> [ = <var title="">value</var> ]</dt>
    <dd>
-    <p>Returns the <span>text track cue text</span> in raw unparsed form.</p>
+    <p>Returns the <a>text track cue text</a> in raw unparsed form.</p>
     <p>Can be set.</p>
    </dd>
 
-   <dt><var title="">fragment</var> = <var title="">cue</var> . <span title="dom-TextTrackCue-getCueAsHTML">getCueAsHTML</span>()</dt>
+   <dt><var title="">fragment</var> = <var title="">cue</var> . <a title="dom-TextTrackCue-getCueAsHTML">getCueAsHTML</a>()</dt>
    <dd>
-    <p>Returns the <span>text track cue text</span> as a <code>DocumentFragment</code> of <span>HTML elements</span> and other DOM nodes.</p>
+    <p>Returns the <a>text track cue text</a> as a <code>DocumentFragment</code> of <a>HTML elements</a> and other DOM nodes.</p>
    </dd>
 
   </dl>
@@ -4229,49 +4238,49 @@
 
   <ol>
 
-   <li><p>Create a new <span>text track cue</span>. Let <var
-   title="">cue</var> be that <span>text track cue</span>.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue start
-   time</span> be the value of the <var title="">startTime</var>
+   <li><p>Create a new <a>text track cue</a>. Let <var
+   title="">cue</var> be that <a>text track cue</a>.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue start
+   time</a> be the value of the <var title="">startTime</var>
    argument, interpreted as a time in seconds.</p></li>
 
-   <li><p>Let <var title="">cue</var>'s <span>text track cue end
-   time</span> be the value of the <var title="">endTime</var>
+   <li><p>Let <var title="">cue</var>'s <a>text track cue end
+   time</a> be the value of the <var title="">endTime</var>
    argument, interpreted as a time in seconds.</p></li>
 
-   <li><p>Let <var title="">cue</var>'s <span>text track cue text</span> be the value of the <var
-   title="">text</var> argument, and let the <span>rules for rendering the cue in isolation</span>
-   be the <span>rules for interpreting WebVTT cue text</span>.</p></li>
+   <li><p>Let <var title="">cue</var>'s <a>text track cue text</a> be the value of the <var
+   title="">text</var> argument, and let the <a>rules for rendering the cue in isolation</a>
+   be the <a>rules for interpreting WebVTT cue text</a>.</p></li>
 
    <!-- default settings -->
 
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   identifier</span> be the empty string.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   pause-on-exit flag</span> be false.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   writing direction</span> be <span title="text track cue
-   horizontal writing direction">horizontal</span>.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   snap-to-lines flag</span> be true.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue line
-   position</span> be <span title="text track cue automatic line
-   position">auto</span>.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   text position</span> be 50.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   size</span> be 100.</p></li>
-
-   <li><p>Let <var title="">cue</var>'s <span>text track cue
-   alignment</span> be <span title="text track cue middle
-   alignment">middle alignment</span>.</p></li>
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   identifier</a> be the empty string.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   pause-on-exit flag</a> be false.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>Text track cue
+   writing direction</a> be <a title="text track cue
+   horizontal writing direction">horizontal</a>.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   snap-to-lines flag</a> be true.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue line
+   position</a> be <a title="text track cue automatic line
+   position">auto</a>.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   text position</a> be 50.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>text track cue
+   size</a> be 100.</p></li>
+
+   <li><p>Let <var title="">cue</var>'s <a>Text track cue
+   alignment</a> be <a title="text track cue middle
+   alignment">middle alignment</a>.</p></li>
 
    <li><p>Return the <code>TextTrackCue</code> object representing
    <var title="">cue</var>.</p></li>
@@ -4281,86 +4290,86 @@
   <p>The <dfn
   title="dom-TextTrackCue-vertical"><code>vertical</code></dfn>
   attribute, on getting, must return the string from the second cell
-  of the row in the table below whose first cell is the <span>text
-  track cue writing direction</span> of the <span>text track
-  cue</span> that the <code>TextTrackCue</code> object represents:</p>
+  of the row in the table below whose first cell is the <a>Text
+  track cue writing direction</a> of the <a>text track
+  cue</a> that the <code>TextTrackCue</code> object represents:</p>
 
   <table>
    <thead>
-    <tr> <th> <span>Text track cue writing direction</span>
+    <tr> <th> <a>Text track cue writing direction</a>
          <th> <code title="dom-TextTrackCue-direction">direction</code> value
    <tbody>
-    <tr> <td> <span title="text track cue horizontal writing direction">Horizontal</span>
+    <tr> <td> <a title="text track cue horizontal writing direction">Horizontal</a>
          <td> "<code title=""></code>" (the empty string)
-    <tr> <td> <span title="text track cue vertical growing left writing direction">Vertical growing left</span>
+    <tr> <td> <a title="text track cue vertical growing left writing direction">Vertical growing left</a>
          <td> "<code title="">rl</code>"
-    <tr> <td> <span title="text track cue vertical growing right writing direction">Vertical growing right</span>
+    <tr> <td> <a title="text track cue vertical growing right writing direction">Vertical growing right</a>
          <td> "<code title="">lr</code>"
   </table>
 
-  <p>On setting, the <span>text track cue writing direction</span> must be set to the value given in
-  the first cell of the row in the table above whose second cell is a <span>case-sensitive</span>
+  <p>On setting, the <a>Text track cue writing direction</a> must be set to the value given in
+  the first cell of the row in the table above whose second cell is a <a>case-sensitive</a>
   match for the new value, if any. If none of the values match, then the user agent must instead
   throw a <code>SyntaxError</code> exception.</p>
 
   <p>The <dfn title="dom-TextTrackCue-snapToLines"><code>snapToLines</code></dfn> attribute, on
-  getting, must return true if the <span>text track cue snap-to-lines flag</span> of the <span>text
-  track cue</span> that the <code>TextTrackCue</code> object represents is set; or false otherwise.
-  On setting, the <span>text track cue snap-to-lines flag</span> must be set if the new value is
+  getting, must return true if the <a>text track cue snap-to-lines flag</a> of the <a>text
+  track cue</a> that the <code>TextTrackCue</code> object represents is set; or false otherwise.
+  On setting, the <a>text track cue snap-to-lines flag</a> must be set if the new value is
   true, and must be unset otherwise.</p>
 
   <p>The <dfn title="dom-TextTrackCue-line"><code>line</code></dfn> attribute, on getting, must
-  return the <span>text track cue line position</span> of the <span>text track cue</span> that the
-  <code>TextTrackCue</code> object represents. The special value <span title="text track cue
-  automatic line position">auto</span> must be represented as the string "<code
-  title="">auto</code>". On setting, the <span>text track cue line position</span> must be set to
+  return the <a>text track cue line position</a> of the <a>text track cue</a> that the
+  <code>TextTrackCue</code> object represents. The special value <a title="text track cue
+  automatic line position">auto</a> must be represented as the string "<code
+  title="">auto</code>". On setting, the <a>text track cue line position</a> must be set to
   the new value; if the new value is the string "<code title="">auto</code>", then it must be
-  interpreted as the special value <span title="text track cue automatic line
-  position">auto</span>.</p>
+  interpreted as the special value <a title="text track cue automatic line
+  position">auto</a>.</p>
 
   <p>The <dfn title="dom-TextTrackCue-position"><code>position</code></dfn> attribute, on getting,
-  must return the <span>text track cue text position</span> of the <span>text track cue</span> that
+  must return the <a>text track cue text position</a> of the <a>text track cue</a> that
   the <code>TextTrackCue</code> object represents. On setting, if the new value is negative or
   greater than 100, then an <code>IndexSizeError</code> exception must be thrown. Otherwise, the
-  <span>text track cue text position</span> must be set to the new value.</p>
+  <a>text track cue text position</a> must be set to the new value.</p>
 
   <p>The <dfn title="dom-TextTrackCue-size"><code>size</code></dfn> attribute, on getting, must
-  return the <span>text track cue size</span> of the <span>text track cue</span> that the
+  return the <a>text track cue size</a> of the <a>text track cue</a> that the
   <code>TextTrackCue</code> object represents. On setting, if the new value is negative or greater
-  than 100, then an <code>IndexSizeError</code> exception must be thrown. Otherwise, the <span>text
-  track cue size</span> must be set to the new value.</p>
+  than 100, then an <code>IndexSizeError</code> exception must be thrown. Otherwise, the <a>text
+  track cue size</a> must be set to the new value.</p>
 
   <p>The <dfn title="dom-TextTrackCue-align"><code>align</code></dfn> attribute, on getting, must
   return the string from the second cell of the row in the table below whose first cell is the
-  <span>text track cue alignment</span> of the <span>text track cue</span> that the
+  <a>Text track cue alignment</a> of the <a>text track cue</a> that the
   <code>TextTrackCue</code> object represents:</p>
 
   <table>
    <thead>
-    <tr> <th><span>Text track cue alignment</span> <th> <code title="dom-TextTrackCue-align">align</code> value
+    <tr> <th><a>Text track cue alignment</a> <th> <code title="dom-TextTrackCue-align">align</code> value
    <tbody>
-    <tr> <td><span title="text track cue start alignment">Start alignment</span> <td> "<code title="">start</code>"
-    <tr> <td><span title="text track cue middle alignment">Middle alignment</span> <td> "<code title="">middle</code>"
-    <tr> <td><span title="text track cue end alignment">End alignment</span> <td> "<code title="">end</code>"
-    <tr> <td><span title="text track cue left alignment">Left alignment</span> <td> "<code title="">left</code>"
-    <tr> <td><span title="text track cue right alignment">Right alignment</span> <td> "<code title="">right</code>"
+    <tr> <td><a title="text track cue start alignment">Start alignment</a> <td> "<code title="">start</code>"
+    <tr> <td><a title="text track cue middle alignment">Middle alignment</a> <td> "<code title="">middle</code>"
+    <tr> <td><a title="text track cue end alignment">End alignment</a> <td> "<code title="">end</code>"
+    <tr> <td><a title="text track cue left alignment">Left alignment</a> <td> "<code title="">left</code>"
+    <tr> <td><a title="text track cue right alignment">Right alignment</a> <td> "<code title="">right</code>"
   </table>
 
-  <p>On setting, the <span>text track cue alignment</span> must be set to the value given in the
-  first cell of the row in the table above whose second cell is a <span>case-sensitive</span> match
+  <p>On setting, the <a>Text track cue alignment</a> must be set to the value given in the
+  first cell of the row in the table above whose second cell is a <a>case-sensitive</a> match
   for the new value, if any. If none of the values match, then the user agent must instead throw a
   <code>SyntaxError</code> exception.</p>
 
   <p>The <dfn title="dom-TextTrackCue-text"><code>text</code></dfn> attribute, on getting, must
-  return the raw <span>text track cue text</span> of the <span>text track cue</span> that the
-  <code>TextTrackCue</code> object represents. On setting, the <span>text track cue text</span> must
+  return the raw <a>text track cue text</a> of the <a>text track cue</a> that the
+  <code>TextTrackCue</code> object represents. On setting, the <a>text track cue text</a> must
   be set to the new value.</p>
 
   <p>The <dfn title="dom-TextTrackCue-getCueAsHTML"><code>getCueAsHTML()</code></dfn> method must
-  convert the <span>text track cue text</span> to a <code>DocumentFragment</code> for the
-  <span>script's document</span> of the <span>entry script</span> by applying the <span>WebVTT cue
-  text DOM construction rules</span> to the result of applying the <span>WebVTT cue text parsing
-  rules</span> to the <span>text track cue text</span>.</p>
+  convert the <a>text track cue text</a> to a <code>DocumentFragment</code> for the
+  <a>script's document</a> of the <a>entry script</a> by applying the <a>WebVTT cue
+  text DOM construction rules</a> to the result of applying the <a>WebVTT cue text parsing
+  rules</a> to the <a>text track cue text</a>.</p>
 
   </section>