Fix lots of typos and other minor formatting issues.
authorGary Kacmarcik <garykac@google.com>
Mon, 26 Aug 2013 20:12:59 -0700
changeset 478 5913a35e9e16
parent 477 d2f4e85136ee
child 479 ed92905bcaba
Fix lots of typos and other minor formatting issues.
html/DOM3-Events.html
html/override.css
--- a/html/DOM3-Events.html	Mon Aug 26 09:28:47 2013 -0700
+++ b/html/DOM3-Events.html	Mon Aug 26 20:12:59 2013 -0700
@@ -117,6 +117,7 @@
 	<!-- Section 1: DOM3 Events Overview  ========================================================-->
 	<section id="dom-events">
 		<h1>Document Object Model Events</h1>
+		
 		<section id="dom-events-overview">
 			<h2>Introduction</h2>
 			<p>DOM Events is designed with two main goals. The first goal is the design of an <a class="def" href="#glossary-event">event</a> system which allows registration
@@ -239,9 +240,9 @@
 
 				<dt>Key and character values</dt>
 				<dd>
-					This is a key name: <code class="key">'Spacebar'</code> (e.g., the value of <a href="#widl-KeyboardEvent-key"><code>KeyboardEvent.key</code></a>); this is the equivalent character
-					value: <code class="char">'\u0020'</code>. This is a glyph that represents that same
-					character value: <code class="glyph">' '</code>.
+					This is a key name: <code class="key">'Spacebar'</code> (e.g., the value of <a href="#widl-KeyboardEvent-key"><code>KeyboardEvent.key</code></a>).
+					This is the equivalent character value: <code class="char">'\u0020'</code>.
+					This is a glyph that represents that same character value: <code class="glyph">' '</code>.
 				</dd>
 
 				<dt>Glossary definitions</dt>
@@ -289,7 +290,7 @@
 				author-defined variables, or both.  The default task for any given element MAY be a generic action, or MAY be
 				unique to that element.  For example, the activation behavior of an HTML or SVG <code>&lt;a&gt;</code> element is to cause the
 				<a class="def" href="#glossary-user-agent">user agent</a> to traverse the link specified in the <code>href</code> attribute, with the further optional parameter
-				of specifying the browsing context for the traversal (such as the current window or tab, a named window, or a new window); the activation behavior of an HTML
+				of specifying the browsing context for the traversal (such as the current window or tab, a named window, or a new window). The activation behavior of an HTML
 				<code>&lt;input&gt;</code> element with the <code>type</code> attribute value <code>submit</code> is be to send the values of the form elements to an
 				author-defined IRI by the author-defined HTTP method.  See <a href="#event-flow-activation">Activation triggers and behavior</a> for more details.</dd>
 
@@ -414,15 +415,15 @@
 
 			<dt id="glossary-event-order"><dfn>event order</dfn></dt>
 			<dd>The sequence in which events from the same event source or process occur, using the same or related event interfaces. For example, in an environment with a mouse,
-				a track pad, and a keyboard, each of those input devices would constitute a separate event source, and each would follow its own event order; a <a class="eventtype"
+				a track pad, and a keyboard, each of those input devices would constitute a separate event source, and each would follow its own event order. A <a class="eventtype"
 				href="#event-type-mousedown"><code>mousedown</code></a> event from the trackpad followed by a <a class="eventtype" href="#event-type-mouseup"><code>mouseup</code></a>
 				event from the mouse would not result in a <a class="eventtype" href="#event-type-click"><code>click</code></a> event.
 
-				<p class="note"><strong>Note:</strong> There can be interactions between different event orders; for example, a <a class="eventtype" href="#event-type-click"><code>click</code></a> event might
-				be modified by a concurrent <a class="eventtype" href="#event-type-keydown"><code>keydown</code></a> event (<code class="key">'Shift'</code><code>+click</code>); however, the event orders
+				<p class="note"><strong>Note:</strong> There can be interactions between different event orders. For example, a <a class="eventtype" href="#event-type-click"><code>click</code></a> event might
+				be modified by a concurrent <a class="eventtype" href="#event-type-keydown"><code>keydown</code></a> event (<code class="key">'Shift'</code><code>+click</code>). However, the event orders
 				of these different event sources would be distinct.</p>
 
-				The event order of some interfaces are device-independent; for example, a user might change focus using the <a href="#key-Tab"><code class="key">'Tab'</code></a>
+				The event order of some interfaces are device-independent. For example, a user might change focus using the <a href="#key-Tab"><code class="key">'Tab'</code></a>
 				key, or by clicking the new focused element with the mouse.  The event order in such cases depends on the state of the process, not on the state of the device that
 				initiates the state change.</dd>
 
@@ -477,7 +478,7 @@
 			<dt id="glossary-key-value"><dfn>key value</dfn></dt>
 			<dd>A key value is a <a class="def" href="#glossary-character-value">character value</a> or multi-character string (such as <a href="#key-Enter"><code class="key">'Enter'
 				</code></a>, <a href="#key-Tab"><code class="key">'Tab'</code></a>, or <a href="#key-MediaNextTrack"><code class="key">'MediaNextTrack'</code></a>) associated
-				with a key in a particular state. Every key has a key value, whether or not it has a <a class="def" href="#glossary-character-value">character value</a>; this includes
+				with a key in a particular state. Every key has a key value, whether or not it has a <a class="def" href="#glossary-character-value">character value</a>. This includes
 				control keys, function keys, <a class="def" href="#glossary-modifier-key">modifier keys</a>, <a class="def" href="#glossary-dead-key">dead keys</a>, and any other key.
 				The key value of any given key at any given time depends upon the <a class="def" href="#glossary-key-mapping">key mapping</a>.</dd>
 
@@ -521,7 +522,7 @@
 				W, E, R, T, and Y.  There are many other popular keyboard layouts (including the Dvorak and Colemak layouts), most designed for localization or ergonomics.</dd>
 
 			<dt id="glossary-root-element"><dfn>root element</dfn></dt>
-			<dd>The first element node of a document, of which all other elements are children; the document element.</dd>
+			<dd>The first element node of a document, of which all other elements are children. The document element.</dd>
 
 			<dt id="glossary-rotation"><dfn>rotation</dfn></dt>
 			<dd>An indication of incremental change on an input device using the <a href="#interface-WheelEvent">WheelEvent</a> interface. On some devices this MAY be a literal
@@ -613,15 +614,15 @@
 
 			<p>The propagation path MUST be an ordered list of <a class="def" href="#glossary-current-event-target">current event targets</a> through which
 				the event object MUST pass. For DOM implementations, the propagation path MUST reflect the hierarchical tree
-				structure of the document. The last item in the list MUST be the <a class="def" href="#glossary-event-target">event target</a>; the
+				structure of the document. The last item in the list MUST be the <a class="def" href="#glossary-event-target">event target</a>. The
 				preceding items in the list are referred to as the <em>target's ancestors</em>, and the immediately preceding item as the <em>target's parent</em>. Once determined, the
-				propagation path MUST NOT be changed; for DOM implementations, this applies even if an element in the propagation path is moved within the
+				propagation path MUST NOT be changed. For DOM implementations, this applies even if an element in the propagation path is moved within the
 				DOM or removed from the DOM.</p>
 
 			<div class="example">
 				<div class="example-title"></div>
 				<p>In the DOM event flow, event listeners might change the position of the <a class="def" href="#glossary-event-target">
-				event target</a> in the document while the event object is being dispatched; such changes do not affect the propagation path.</p>
+				event target</a> in the document while the event object is being dispatched. Such changes do not affect the propagation path.</p>
 			</div>
 
 			<p>Exceptions thrown inside event listeners MUST NOT stop the propagation of the event or affect the
@@ -675,7 +676,7 @@
 			<p>Next, the implementation MUST determine the current target's <a class="def" href="#glossary-candidate-event-handlers">candidate event listeners</a>.
 				This MUST be the list of all event listeners that have been registered on the current target in their order of registration. [<cite><a class="informative"
 				href="#references-HTML5">HTML5</a></cite>] defines the ordering of listeners registered through event handler attributes. Once determined, the candidate event listeners
-				MUST NOT be changed; adding or removing listeners does not affect the current target's candidate event listeners.</p>
+				MUST NOT be changed. Adding or removing listeners does not affect the current target's candidate event listeners.</p>
 
 			<p>Finally, the implementation MUST process all candidate <a class="def" href="#glossary-event-handler">event handlers</a> in order and trigger
 				each handler if all the following conditions are met:</p>
@@ -701,8 +702,8 @@
 
 			<p>The model defined above MUST be applied regardless of the specific event flow associated with an event target. Each event flow MUST define how the propagation path
 				MUST be determined and which event phases are supported. The <em>DOM event flow</em> is an application of this model: the propagation path for a <code>Node</code>
-				object MUST be determined by its <code>Node.parentNode</code> chain, and if applicable, the document's containing <a class="def" href="#glossary-defaultView">defaultView</a>;
-				all events accomplish the capture and target phases; whether an event accomplishes the bubble phase MUST be defined individually for each <a class="def" href="#glossary-event-type">
+				object MUST be determined by its <code>Node.parentNode</code> chain, and if applicable, the document's containing <a class="def" href="#glossary-defaultView">defaultView</a>.
+				All events accomplish the capture and target phases. Whether an event accomplishes the bubble phase MUST be defined individually for each <a class="def" href="#glossary-event-type">
 				event type</a>. An alternate application of this model can be found in [<cite><a class="informative" href="#references-DOMLS">DOM3 Load and Save</a></cite>].</p>
 
 			<p>Implementations of the DOM event model MUST be reentrant. Event listeners MAY perform actions that cause additional events to be dispatched. Such events are handled
@@ -750,7 +751,7 @@
 				that the <a class="def" href="#glossary-default-action">default action</a> of cancelable events will be cancelled (though <code>window.onerror</code> handlers are cancelled
 				by returning <code>true</code>).</p>
 
-			<p class="note"><strong>Authoring Note: </strong>Some cancelable events might not have any observable <a class="def" href="#glossary-default-action">default actions</a>; for
+			<p class="note"><strong>Authoring Note: </strong>Some cancelable events might not have any observable <a class="def" href="#glossary-default-action">default actions</a>. For
 				example, the <a class="eventtype" href="#event-type-mousemove"><code>mousemove</code></a> event.</p>
 
 			<p>This specification does not offer features to programatically query if an event object has any <a class="def" href="#glossary-default-action">default action</a> associated with
@@ -773,8 +774,8 @@
 
 			<p>Events which are synchronous (<em><q>sync events</q></em>) MUST be treated as if they are in a virtual queue in a first-in-first-out model, ordered by sequence
 				of temporal occurrence with respect to other events, to changes in the DOM, and to user interaction.  Each event in this virtual queue MUST be delayed until the
-				previous event has completed its propagation behavior, or been canceled.  Some sync events are driven by a specific device or process, such as mouse button events;
-				these events are governed by the <a class="def" href="#glossary-event-order">event order</a> algorithms defined for that set of events, and a user agent MUST dispatch
+				previous event has completed its propagation behavior, or been canceled.  Some sync events are driven by a specific device or process, such as mouse button events.
+				These events are governed by the <a class="def" href="#glossary-event-order">event order</a> algorithms defined for that set of events, and a user agent MUST dispatch
 				these events in the defined order.</p>
 
 			<div class="example">
@@ -815,7 +816,7 @@
 					event orders</a>.</p>
 
 				<p>Using the terminology of HTML5, each independent device, such as a mouse or keyboard, SHOULD be treated as a <em>task source</em> which feeds into the appropriate
-					<em>task queue</em>, in the order defined by the <a class="def" href="#glossary-event-order">event order</a> associated with that device; each operation, such as
+					<em>task queue</em>, in the order defined by the <a class="def" href="#glossary-event-order">event order</a> associated with that device. Each operation, such as
 					a focus change or composition input, also acts as a <em>task source</em> for the appropriate <em>task queue</em>.  The resolution of these event loops is handled
 					in a manner conforming to the <a class="def" href="#glossary-host-language">host language</a>, such as HTML [<cite><a class="informative" href="#references-HTML5">HTML5</a></cite>].</p>
 
@@ -835,7 +836,7 @@
 
 			<p>Most untrusted events SHOULD NOT trigger <a class="def" href="#glossary-default-action">default actions</a>, with the exception of <a class="eventtype" href="#event-type-click">
 				<code>click</code></a> or <a class="eventtype" href="#event-type-DOMActivate"><code>DOMActivate</code></a> events. These events trigger the <a class="def" href="#glossary-default-action">
-				default action</a> of an <a class="def" href="#glossary-activation-trigger">activation trigger</a> (see <a href="#event-flow-activation">Activation triggers and behaviors</a> for more details); these
+				default action</a> of an <a class="def" href="#glossary-activation-trigger">activation trigger</a> (see <a href="#event-flow-activation">Activation triggers and behaviors</a> for more details). These
 				untrusted events have an <a href="#widl-Event-isTrusted"><code>isTrusted</code></a> attribute value of <code>false</code>, but still initiate any
 				<a class="def" href="#glossary-default-action">default actions</a> for backwards compatibility. All other untrusted events MUST behave
 				as if the <a href="#widl-Event-preventDefault"><code>Event.preventDefault()</code></a> method had been called on that event.</p>
@@ -1109,7 +1110,7 @@
 						href="#glossary-candidate-event-handlers">candidate event listeners</a>. Once it has been called, further calls to this method have no additional effect.</p>
 
 					<p class="note" id="note-stopPropagation-default"><strong>Note:</strong> This method does not prevent the <a class="def" href="#glossary-default-action">default action</a>
-						from being invoked; use <a href="#widl-Event-preventDefault"><code>Event.preventDefault()</code></a> for that effect.</p>
+						from being invoked &mdash; use <a href="#widl-Event-preventDefault"><code>Event.preventDefault()</code></a> for that effect.</p>
 				</dd>
 
 				<dt>void preventDefault()</dt>
@@ -1120,7 +1121,7 @@
 						event MUST have no effect.  If an event has more than one <a class="def" href="#glossary-default-action">default action</a>, each cancelable <a class="def" href="#glossary-default-action">
 						default action</a> MUST be canceled.</p>
 
-					<p class="note"><strong>Note:</strong> This method does not stop the event propagation; use <a href="#widl-Event-stopPropagation">
+					<p class="note"><strong>Note:</strong> This method does not stop the event propagation &mdash; use <a href="#widl-Event-stopPropagation">
 						<code>Event.stopPropagation()</code></a> or <a href="#widl-Event-stopImmediatePropagation"><code>Event.stopImmediatePropagation()</code></a> for that effect.</p>
 				</dd>
 
@@ -1187,7 +1188,7 @@
 						<a class="def" href="#glossary-candidate-event-handlers">candidate event listeners</a>. Once it has been called, further calls to this method have no additional
 						effect.</p>
 
-					<p class="note"><strong>Note:</strong> This method does not prevent the <a class="def" href="#glossary-default-action">default action</a> from being invoked;
+					<p class="note"><strong>Note:</strong> This method does not prevent the <a class="def" href="#glossary-default-action">default action</a> from being invoked &mdash;
 						use <a href="#widl-Event-preventDefault"><code>Event.preventDefault()</code></a> for that effect.</p>
 				</dd>
 
@@ -1292,7 +1293,7 @@
 						<dt>EventListener? listener</dt>
 						<dd>
 							<p>The <code>listener</code> parameter MUST be an object that implements the <a href="#interface-EventListener"><code>EventListener</code></a> interface or a function.
-								If <code>listener</code> is a function then it MUST be used as the callback for the event; otherwise, if <code>listener</code> implements <a href="#interface-EventListener">
+								If <code>listener</code> is a function then it MUST be used as the callback for the event. Otherwise, if <code>listener</code> implements <a href="#interface-EventListener">
 								<code>EventListener</code></a>, then its <a href="#widl-EventListener-handleEvent">handleEvent</a> method MUST be used as the callback.</p>
 						</dd>
 
@@ -2213,7 +2214,7 @@
 
 							<p>The <a class="def" href="#glossary-defaultView"><code>defaultView</code></a> object SHOULD always be resizable.  A <a class="def" href="#glossary-host-language">
 								host language</a> MAY define certain elements to be resizable, and under what conditions (e.g., specific elements like <code>&lt;iframe&gt;</code>, or elements
-								with particular characteristics like width and height); however, this specification does not define the behavior for elements.</p>
+								with particular characteristics like width and height). However, this specification does not define the behavior for elements.</p>
 
 							<p class="note"><strong>Note:</strong>  The <a class="eventtype" href="#event-type-resize"><code>resize</code></a> event is distinct from the
 								SVG <code class="eventtype">zoom</code> event types, though both can occur at the same time, or as the consequence of the same user action.  In particular, browser
@@ -3006,7 +3007,7 @@
 						</tr>
 						<tr>
 							<td class="cell-number"></td>
-							<td colspan="3"><em>Pointing device is moved into element C; the topmost element in the stack</em></td>
+							<td colspan="3"><em>Pointing device is moved into element C, the topmost element in the stack</em></td>
 						</tr>
 						<tr>
 							<td class="cell-number">2.</td>
@@ -3399,7 +3400,7 @@
 									MouseEvent.buttons</code></a> value is <code>1</code>):
 									<ul>
 										<li>If the <a class="def" href="#glossary-event-target">event target</a> is selectable, the <a class="def" href="#glossary-default-action">default action</a> MUST
-											be to select part or all of the selectable content; subsequent clicks MAY select additional selectable portions of that content.</li>
+											be to select part or all of the selectable content. Subsequent clicks MAY select additional selectable portions of that content.</li>
 									</ul>
 								</li>
 							</ul>
@@ -3484,7 +3485,7 @@
 
 							<p class="note"><strong>Note: </strong>Many implementations use the <a class="eventtype"><code>mousedown</code></a> event to begin a variety of contextually dependent <a class="def"
 								href="#glossary-default-action">default actions</a>. These default actions can be prevented if this event is canceled. Some of these default actions could include: beginning
-								a drag/drop interaction with an image or link; starting text selection; etc. Additionally, some implementations provide a mouse-driven panning feature that is activated when
+								a drag/drop interaction with an image or link, starting text selection, etc. Additionally, some implementations provide a mouse-driven panning feature that is activated when
 								the middle mouse button is pressed at the time the <a class="eventtype"><code>mousedown</code></a> event is dispatched.</p>
 
 						</dd>
@@ -4407,7 +4408,7 @@
 
 						<dt>const unsigned long DOM_KEY_LOCATION_LEFT = 0x01</dt>
 						<dd>
-							<p>The key activated originated from the left key location (there is more than one possible location for this key).</p>
+							<p>The key activated originated from the left key location (when there is more than one possible location for this key).</p>
 
 							<div class="example">
 								<div class="example-title"></div>
@@ -4417,7 +4418,7 @@
 
 						<dt>const unsigned long DOM_KEY_LOCATION_RIGHT = 0x02</dt>
 						<dd>
-							<p>The key activation originated from the right key location (there is more than one possible location for this key).</p>
+							<p>The key activation originated from the right key location (when there is more than one possible location for this key).</p>
 
 							<div class="example">
 								<div class="example-title"></div>
@@ -4573,15 +4574,22 @@
 					</dl>
 				</section>
 
-				<p class="warning"><strong>Warning!</strong>  Legacy keyboard event implementations include three additional attributes, <code>keyCode</code>, <code>charCode</code>, and
-					<code>which</code>.  The <code>keyCode</code> attribute indicates a numeric value associated with a particular key on a computer keyboard,
-					while the <code>charCode</code> attribute indicates the <acronym title="American Standard Code for Information Interchange">ASCII</acronym> value of the character
-					associated with that key (which might be the same as the <code>keyCode</code> value) and is applicable only to keys that produce a
-					<a class="def" href="#glossary-character-value">character value</a>.  In practice, <code>keyCode</code> and <code>charCode</code> are inconsistent across platforms
-					and even the same implementation on different operating systems or using different localizations.  DOM Level 3 Events  does not define values for either
-					<code>keyCode</code> or <code>charCode</code>, or behavior for <code>charCode</code>; content authors can use <a href="#widl-KeyboardEvent-key"><code>KeyboardEvent.key</code></a>
-					instead, in conforming DOM Level 3 Events implementations. <em>For more information, see
-					the informative appendix on <a href="#legacy-key-attributes">Legacy key attributes</a>.</em></p>
+				<div class="warning">
+					<p><strong>Warning!</strong></p>
+					<p>Legacy keyboard event implementations include three additional attributes, <code>keyCode</code>, <code>charCode</code>, and
+						<code>which</code>.  The <code>keyCode</code> attribute indicates a numeric value associated with a particular key on a computer keyboard,
+						while the <code>charCode</code> attribute indicates the <acronym title="American Standard Code for Information Interchange">ASCII</acronym> value of the character
+						associated with that key (which might be the same as the <code>keyCode</code> value) and is applicable only to keys that produce a
+						<a class="def" href="#glossary-character-value">character value</a>.
+						</p>
+					<p>In practice, <code>keyCode</code> and <code>charCode</code> are inconsistent across platforms
+						and even the same implementation on different operating systems or using different localizations.
+						DOM Level 3 Events  does not define values for either
+						<code>keyCode</code> or <code>charCode</code>, or behavior for <code>charCode</code>.
+						In conforming DOM Level 3 Events implementations, content authors can instead use <a href="#widl-KeyboardEvent-key"><code>KeyboardEvent.key</code></a>.
+						<em>For more information, see the informative appendix on <a href="#legacy-key-attributes">Legacy key attributes</a>.</em>
+						</p>
+					</div>
 
 				<p class="note"><strong>Note:</strong> For compatibility with existing content, virtual keyboards, such as software keyboards on screen-based
 					input devices, are expected to produce the normal range of keyboard events, even though they do not possess physical keys.</p>
@@ -4625,29 +4633,30 @@
 					</table>
 					
 					<p>If the key is depressed for a sustained period, the following events MAY repeat at an environment-dependent rate: <!-- and the key should seek counseling -->
-						<table class="event-sequence-table">
-							<tr>
-								<td class="cell-number">1.</td>
-								<td><a class="eventtype" href="#event-type-keydown"><code>keydown</code></a></td>
-								<td><em>(with <a href="#widl-KeyboardEvent-repeat">repeat</a> attribute set to <code> true</code>)</em></td>
-							</tr>
-							<tr>
-								<td class="cell-number">2.</td>
-								<td><a class="eventtype" href="#event-type-beforeinput"><code>beforeinput</code></a></td>
-								<td><em>(only for keys which produce a <a class="def" href="#glossary-character-value">character value</a>)</em></td>
-							</tr>
-							<tr>
-								<td class="cell-number"></td>
-								<td colspan="2"><em>Any <a class="def" href="#glossary-default-action">default actions</a> related to this key, such as inserting a
-									character in to the DOM.</em></td>
-							</tr>
-							<tr>
-								<td class="cell-number">3.</td>
-								<td><a class="eventtype" href="#event-type-input"><code>input</code></a></td>
-								<td><em>(only for keys which have updated the DOM)</em></td>
-							</tr>
-						</table>
-					</p>
+						</p>
+					
+					<table class="event-sequence-table">
+						<tr>
+							<td class="cell-number">1.</td>
+							<td><a class="eventtype" href="#event-type-keydown"><code>keydown</code></a></td>
+							<td><em>(with <a href="#widl-KeyboardEvent-repeat">repeat</a> attribute set to <code> true</code>)</em></td>
+						</tr>
+						<tr>
+							<td class="cell-number">2.</td>
+							<td><a class="eventtype" href="#event-type-beforeinput"><code>beforeinput</code></a></td>
+							<td><em>(only for keys which produce a <a class="def" href="#glossary-character-value">character value</a>)</em></td>
+						</tr>
+						<tr>
+							<td class="cell-number"></td>
+							<td colspan="2"><em>Any <a class="def" href="#glossary-default-action">default actions</a> related to this key, such as inserting a
+								character in to the DOM.</em></td>
+						</tr>
+						<tr>
+							<td class="cell-number">3.</td>
+							<td><a class="eventtype" href="#event-type-input"><code>input</code></a></td>
+							<td><em>(only for keys which have updated the DOM)</em></td>
+						</tr>
+					</table>
 
 					<p class="note"><strong>Note:</strong> Typically, any <a class="def" href="#glossary-default-action">default actions</a> associated with any particular
 						key are completed before the <a class="eventtype" href="#event-type-keyup"><code>keyup</code></a> event is dispatched. This might delay the <a class="eventtype"
@@ -4658,8 +4667,8 @@
 						host language</a> to accept keyboard input for non-text purposes, such as the activation of a hotkey or trigger of some other behavior. If no suitable element
 						is in focus, the event target will be the root element.</p>
 
-					<p class="note"><strong>Note:</strong>  The <a class="def" href="#glossary-event-target">event target</a> might change between different key events;
-						for example, a <a class="eventtype" href="#event-type-keydown"><code>keydown</code></a> event on the <a href="#key-Tab"><code class="key">'Tab'</code></a> key
+					<p class="note"><strong>Note:</strong>  The <a class="def" href="#glossary-event-target">event target</a> might change between different key events.
+						For example, a <a class="eventtype" href="#event-type-keydown"><code>keydown</code></a> event for the <a href="#key-Tab"><code class="key">'Tab'</code></a> key
 						will likely have a different <a class="def" href="#glossary-event-target">event target</a> than the  <a class="eventtype" href="#event-type-keyup"><code>keyup</code></a>
 						event on the same keystroke.</p>
 				</section>
@@ -4731,7 +4740,7 @@
 											<li><a href="#widl-KeyboardEvent-repeat"><code class="attribute-name">KeyboardEvent.repeat</code></a>:
 												<code>true</code> if a key has been depressed long enough to trigger key repetition, otherwise <code>false</code></li>
 											<li><a href="#widl-KeyboardEvent-locale"><code class="attribute-name">KeyboardEvent.locale</code></a>:
-												the language code for the key event, if available; otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
+												the language code for the key event, if available. otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
 										</ul>
 									</td>
 								</tr>
@@ -4839,7 +4848,7 @@
 											<li><a href="#widl-KeyboardEvent-repeat"><code class="attribute-name">KeyboardEvent.repeat</code></a>:
 												<code>false</code></li>
 											<li><a href="#widl-KeyboardEvent-locale"><code class="attribute-name">KeyboardEvent.locale</code></a>:
-												the language code for the key event, if available; otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
+												the language code for the key event, if available. otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
 										</ul>
 									</td>
 								</tr>
@@ -5185,7 +5194,7 @@
 											<li><a href="#widl-CompositionEvent-data"><code class="attribute-name">CompositionEvent.data</code></a>:
 												the original string being edited, otherwise the <a class="def" href="#glossary-empty-string">empty string</a></li>
 											<li><a href="#widl-CompositionEvent-locale"><code class="attribute-name">CompositionEvent.locale</code></a>:
-												the language code for the composition event, if available; otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
+												the language code for the composition event, if available. otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
 										</ul>
 									</td>
 								</tr>
@@ -5263,7 +5272,7 @@
 												the string comprising the current results of the composition session, which MAY be the
 												<a class="def" href="#glossary-empty-string">empty string</a> if the content has been deleted</li>
 											<li><a href="#widl-CompositionEvent-locale"><code class="attribute-name">CompositionEvent.locale</code></a>:
-												the language code for the composition event, if available; otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
+												the language code for the composition event, if available. otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
 										</ul>
 									</td>
 								</tr>
@@ -5339,7 +5348,7 @@
 												the string comprising the final result of the composition session, which MAY be the
 												<a class="def" href="#glossary-empty-string">empty string</a> if the content has been deleted or if the composition process has been canceled</li>
 											<li><a href="#widl-CompositionEvent-locale"><code class="attribute-name">CompositionEvent.locale</code></a>:
-												the language code for the composition event, if available; otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
+												the language code for the composition event, if available. otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
 										</ul>
 									</td>
 								</tr>
@@ -5404,14 +5413,14 @@
 					'8'</code>, or <code class="glyph">'ш'</code>), or names or symbols which indicate that key's function (such as an upward-pointing arrow <code class="glyph">&#x21E7;</code> indicating
 					<code class="key">'Shift'</code>, or the string <code>'Enter'</code>).  Keys are often referred to by this marking (e.g., <q>Press the <code>
 					'Shift'</code> and <code>'F'</code> keys.</q>).  However, the visual appearance of the key has no bearing on its digital representation, and
-					in many configurations MAY be completely inaccurate; even the control and function keys, such as <code>'Enter'</code>, MAY be mapped to different
+					in many configurations MAY be completely inaccurate. Even the control and function keys, such as <code>'Enter'</code>, MAY be mapped to different
 					functionality, or even mapped as character keys.</p>
 
 				<p>For historical reasons, the character keys are typically marked with the capital-letter equivalents of the character value they produce, e.g., the <code>
 					'F'</code> key (the key marked with the glyph <code class="glyph">'F'</code>), will produce the character value <code class="char">'f'</code> when pressing
 					without an active modifier key (<code class="key">'Shift'</code>) or modifier state (<code class="key">'CapsLock'</code>).</p>
 
-				<p class="note"><strong>Note:</strong> The key legends for function keys do not normally produce any characters, although the symbol might have a Unicode equivalent; for example, the <code
+				<p class="note"><strong>Note:</strong> The key legends for function keys do not normally produce any characters, although the symbol might have a Unicode equivalent. For example, the <code
 					class="key">'Shift'</code> key might bear the symbol <code class="glyph">&#x21E7;</code>, which has the <a class="def" href="#glossary-unicode-code-point">Unicode code point</a> <code class="char">
 					'\u21E7'</code>, but pressing the <code class="key">'Shift'</code> key will not produce this character value, and there is no <a class="def" href="#glossary-unicode-code-point">
 					Unicode code point</a> for <code class="key">'Shift'</code>.</p>
@@ -5503,7 +5512,7 @@
 				<section id="keyboard-chording-virtual">
 					<h4>Virtual Keyboards and Chording Keyboards</h4>
 
-					<p>Virtual keyboards are software-based sets of keys, in a variety of different arrangements, commonly found on touch-screen devices; they are often modal, with the
+					<p>Virtual keyboards are software-based sets of keys, in a variety of different arrangements, commonly found on touch-screen devices. They are often modal, with the
 						ability to switch between different dynamic sets of keys, such as alphabetic, numeric, or symbolic keys.  Because of the lack of physical constraints, these keyboards
 						MAY present the widest range of characters, including emoticons and other symbols, and MAY have keys not represented by Unicode [<a href="#references-Unicode">Unicode</a>]
 						or by the <a href="#key-value-tables">key values</a> defined in this specification.  Wherever possible, however, virtual keyboards SHOULD produce the normal range
@@ -5535,7 +5544,7 @@
 			<p>Key values can be used to detect the value of a key which has been pressed, using the <a href="#widl-KeyboardEvent-key"><code>KeyboardEvent.key</code></a>
 				attribute.  Content authors can retrieve the <a class="def" href="#glossary-character-value">
 				character value</a> of upper- or lower-case letters, number, symbols, or other character-producing keys, and also the <a class="def" href="#glossary-key-value">key
-				value</a> of control keys, modifier keys, function keys, or other keys that do not generate characters; these values can be used for monitoring particular
+				value</a> of control keys, modifier keys, function keys, or other keys that do not generate characters. These values can be used for monitoring particular
 				input strings, for detecting and acting on modifier key input in combination with other inputs (such as a mouse), for creating virtual keyboards, or for any number
 				of other purposes.</p>
 
@@ -5549,7 +5558,7 @@
 				content authors can <q>consider using numbers and function keys (F4, F5, and so on) instead of letters</q> ([<cite><a class="informative" href="#references-DWW95">DWW95</a></cite>])
 				given that most keyboard layouts will provide keys for those.</p>
 
-			<p>A key value does not indicate a specific key on the physical keyboard, nor does it reflect the character printed on the key; a key
+			<p>A key value does not indicate a specific key on the physical keyboard, nor does it reflect the character printed on the key. A key
 				value indicates the current value of the event with consideration to the current state of all active keys and key input modes (including shift modes and <a class="def"
 				href="#glossary-dead-key">dead keys</a>), as reflected in the operating-system mapping of the keyboard and reported to the implementation.  In other words, the
 				key value for the key marked <code class="glyph">'O'</code> on a <a class="def" href="#glossary-qwerty">QWERTY</a> keyboard has the key value <code class="key">'o'</code> in an unshifted
@@ -5558,11 +5567,11 @@
 				author is encouraged not to assume that a relationship exists between the shifted and unshifted states of a key and the majuscule form (uppercase or capital letters)
 				and minuscule form (lowercase or small letters) of a character representation, but is encouraged instead to use the value of the <a href="#widl-KeyboardEvent-key">
 				<code>KeyboardEvent.key</code></a> attribute.  The keyboard depicted in <a href="#figure-keyboard">
-				Figure 4</a> illustrates one possible set of <a class="def" href="#glossary-key-mapping">key mappings</a> on one possible keyboard layout; many others exist,
+				Figure 4</a> illustrates one possible set of <a class="def" href="#glossary-key-mapping">key mappings</a> on one possible keyboard layout. Many others exist,
 				both standard and idiosyncratic.</p>
 
 			<p>It is also important to note that there is not a one-to-one relationship between key event states and key values.  A particular key value might be associated with
-				multiple keys; for example, many standard keyboards contain more than one key with the <code class="key">'Shift'</code> key value (normally distinguished by the
+				multiple keys. For example, many standard keyboards contain more than one key with the <code class="key">'Shift'</code> key value (normally distinguished by the
 				<a href="#widl-KeyboardEvent-location"><code>KeyboardEvent.location</code></a> values <a href="#widl-KeyboardEvent-DOM_KEY_LOCATION_LEFT"><code class="constant-name">DOM_KEY_LOCATION_LEFT</code></a>
 				and <a href="#widl-KeyboardEvent-DOM_KEY_LOCATION_RIGHT"><code class="constant-name">DOM_KEY_LOCATION_RIGHT</code></a>) or <code class="key">'8'</code> key value (normally
 				distinguished by the <a href="#widl-KeyboardEvent-location"><code>KeyboardEvent.location</code></a> values <a href="#widl-KeyboardEvent-DOM_KEY_LOCATION_STANDARD"><code class="constant-name">
@@ -5571,7 +5580,7 @@
 				is intended for standard keyboard layouts, and cannot always indicate a meaningful distinction).</p>
 
 			<p>Finally, the meaning of any given character representation is context-dependent and complex.  For example, in some contexts, the asterisk (star) glyph (<code
-				class="glyph">'*'</code>) represents a footnote or emphasis (when bracketing a passage of text); however, in some documents or executable programs it is equivalent
+				class="glyph">'*'</code>) represents a footnote or emphasis (when bracketing a passage of text). However, in some documents or executable programs it is equivalent
 				to the mathematical multiplication operation, while in other documents or executable programs, that function is reserved for the multiplication symbol (<code class="glyph">'&#xD7;'</code>,
 				Unicode value <code class="char">'\u00D7'</code>) or the Latin small letter <code>'x'</code> (due to the lack of a multiplication key on many keyboards
 				and the superficial resemblance of the glyphs <code class="glyph">'&#xD7;'</code> and <code class="glyph">'x'</code>).  Thus, the semantic meaning or function of
@@ -5854,7 +5863,7 @@
 
 				<p>The <a class="def" href="#glossary-dead-key">dead keys</a> are represented in the key values set using combining diacritical marks.   While Unicode combining characters
 					always follow the handwriting sequence, with the combining character trailing the corresponding letter, typical deadkey input MAY reverse the sequence, with the
-					combining character before the corresponding letter; for example, the word <em>naïve</em>, using the combining diacritic <em>¨</em>, would be represented sequentially
+					combining character before the corresponding letter. For example, the word <em>naïve</em>, using the combining diacritic <em>¨</em>, would be represented sequentially
 					in Unicode as <em>nai¨ve</em>, but MAY be typed <em>na¨ive</em>.  The sequence of keystrokes <code class="char">'\u0302'</code> (Combining Circumflex Accent key) and <code class="char">'\u0065'</code>
 					(key marked with the Latin Small Letter E) will likely produce (on a PC/AT french keyboard using a french mapping and without any modifier activated) the Unicode
 					character <code class="glyph">'&#xEA;'</code> (Latin Small Letter E With Circumflex), as preferred by the Unicode Normalization Form <em>NFC</em>:</p>
@@ -6297,18 +6306,18 @@
 				<div>
 
 					<p>Some keys on certain devices are intended to activate <a class="def" href="#glossary-ime">input method editor</a> functionality, or to change the mode of an active
-						<a class="def" href="#glossary-ime">input method editor</a>.  Custom keys for this purpose can be defined for different devices or language modes; the keys defined
+						<a class="def" href="#glossary-ime">input method editor</a>.  Custom keys for this purpose can be defined for different devices or language modes. The keys defined
 						in this specification for this purpose are: <code>Alphanumeric</code>, <code>CodeInput</code>, <code>FinalMode</code>, <code>HangulMode</code>, <code>HanjaMode</code>,
 						<code>Hiragana</code>, <code>JunjaMode</code>, <code>KanaMode</code>,
 						<code>KanjiMode</code>, <code>Katakana</code>, and <code>RomanCharacters</code>.  When one of these keys is pressed, and no <a class="def" href="#glossary-ime">IME</a>
-						is currently active, the appropriate <a class="def" href="#glossary-ime">IME</a> is expected to be activated in the mode indicated by the key (if available); if
+						is currently active, the appropriate <a class="def" href="#glossary-ime">IME</a> is expected to be activated in the mode indicated by the key (if available). If
 						an <a class="def" href="#glossary-ime">IME</a> is already active when the key is pressed, the active <a class="def" href="#glossary-ime">IME</a> might change to
 						the indicated mode, or a different <a class="def" href="#glossary-ime">IME</a> might be launched, or the might MAY be ignored, on a device- and application-specific
 						basis.</p>
 
 					<p>This specification also defines other keys which are intended for operation specifically with <a class="def" href="#glossary-ime">input method editors</a>: <code>
 						Accept</code>, <code>AllCandidates</code>, <code>Cancel</code>, <code>Convert</code>, <code>Compose</code>, <code>FullWidth</code>, <code>HalfWidth</code>, <code>NextCandidate</code>,
-						<code>Nonconvert</code>, and <code>PreviousCandidate</code>.  The functions of these keys are not defined in this specification; refer to other resources for details
+						<code>Nonconvert</code>, and <code>PreviousCandidate</code>.  The functions of these keys are not defined in this specification &mdash; refer to other resources for details
 						on <a class="def" href="#glossary-ime">input method editor</a> functionality.</p>
 
 					<p class="note"><strong>Note:</strong> Keys with <a class="def" href="#glossary-ime">input method editor</a> functions are not restricted to that purpose, and can have other device- or implementation-specific
@@ -6581,8 +6590,8 @@
 
 			<p>Implementations that are unable to identify a key MUST use the key value <a href="#key-Unidentified"><code class="key">'Unidentified'</code></a>.</p>
 
-			<p class="warning"><strong>Warning!</strong> Conforming implementations MUST only use this key value when there is no way for the implementation to detect the key value;
-				exposing only this value MUST NOT indicate a conforming implementation.</p>
+			<p class="warning"><strong>Warning!</strong> Conforming implementations MUST only use this key value when there is no way for the implementation to detect the key value.
+				Exposing only this value MUST NOT indicate a conforming implementation.</p>
 
 			<p>The <a class="def" href="#glossary-key-value">key values</a> defined in this specification are based in part on the sets of keycodes from
 				the <code>java.awt.event.KeyEvent</code> interface of the Java Platform, Standard Edition 6 API Specification
@@ -6608,8 +6617,8 @@
 
 				<ul>
 					<li>are based on UTF-16 encoding, in that it uses surrogate pairs for values outside the Basic Multilingual Plane</li>
-					<li>are expressed using surrogate pairs, which makes it difficult for a human to look up the value, and might require unnecessary overhead for machine processing;
-						this can also cause problems with software written in the incorrect belief that Unicode is a 16-bit character set</li>
+					<li>are expressed using surrogate pairs, which makes it difficult for a human to look up the value, and might require unnecessary overhead for machine processing
+						&mdash; this can also cause problems with software written in the incorrect belief that Unicode is a 16-bit character set</li>
 					<li>are problematic for characters on supplementary planes (emoji, or Chinese characters on plane 2), some of which are expected to be input using a keyboard</li>
 					<li>are not be suitable for Java or C, which use different escaping mechanisms (could be solved with a normalizing method)</li>
 				</ul>
@@ -6998,7 +7007,7 @@
 
 	</section>
 
-	<!-- Appendix A: Initializing events ========================================================-->
+	<!-- Appendix A: Initializing New Event Interfaces ========================================================-->
 	<section id="new-event-interface-initializers" class="appendix">
 		<h1>Initializing New Event Interfaces</h1>
 
@@ -7482,7 +7491,7 @@
 							</dd>
 
 							<dt>boolean repeat</dt>
-							<dd><p>Specifies whether the key event is repeating; see <a href="#widl-KeyboardEvent-repeat"><code>KeyboardEvent.repeat</code></a>.</p></dd>
+							<dd><p>Specifies whether the key event is repeating. See <a href="#widl-KeyboardEvent-repeat"><code>KeyboardEvent.repeat</code></a>.</p></dd>
 
 							<dt>DOMString localeArg</dt>
 							<dd><p>Specifies <a href="#widl-KeyboardEvent-locale"><code>KeyboardEvent.locale</code></a>.</p></dd>
@@ -7541,9 +7550,9 @@
 		</section>
 	</section>
 
-	<!-- Appendix B: Legacy key attributes ========================================================-->
+	<!-- Appendix B: Legacy Key Attributes ========================================================-->
 	<section id="legacy-key-attributes">
-		<h1>Legacy key attributes</h1>
+		<h1>Legacy Key Attributes</h1>
 		<p><em>This section is informative</em></p>
 
 		<p>This section provides a non-normative description of the attributes that are currently used when handling keyboard events.</p>
@@ -7570,7 +7579,7 @@
 				and <code class="attribute-name">which</code>.</p>
 
 			<p>All three of these attributes return a numerical code that represents some aspect of the key pressed: <code class="attribute-name">keyCode</code> is an index of
-				the key itself; <code class="attribute-name">charCode</code> is the ASCII value of the character keys; <code class="attribute-name">which</code> is the character
+				the key itself. <code class="attribute-name">charCode</code> is the ASCII value of the character keys. <code class="attribute-name">which</code> is the character
 				value where available and otherwise the key index.  The values for these attributes, and the availability of the attribute, is inconsistent across platforms, keyboard
 				languages and layouts, <a class="def" href="#glossary-user-agent">user agents</a>, versions, and even event types.</p>
 
@@ -7611,7 +7620,7 @@
 						<dd>
 							<p><code class="attribute-name">keyCode</code> holds a system- and implementation-dependent numerical code signifying the unmodified identifier associated with the
 								key pressed. Unlike the <a href="#widl-KeyboardEvent-key"><code>KeyboardEvent.key</code></a>
-								attribute, the set of possible values are not normatively defined in this specification; typically, these value of the <code class="attribute-name">keyCode</code>
+								attribute, the set of possible values are not normatively defined in this specification. Typically, these value of the <code class="attribute-name">keyCode</code>
 								SHOULD represent the decimal codepoint in ASCII [<a href="#ref-rfc20">RFC20</a>][<a href="#ref-US-ASCII">US-ASCII</a>] or Windows 1252 [<a href="#ref-WIN1252">WIN1252</a>],
 								but MAY be drawn from a different appropriate character set. Implementations that are unable to identify a key use the key value <code class="key">'0'</code>.</p>
 
@@ -7741,8 +7750,9 @@
 		</section>
 	</section>
 
+	<!-- Appendix C: Legacy Event Types ========================================================-->	
 	<section id="legacy-event-types">
-		<h1>Legacy event types</h1>
+		<h1>Legacy Event Types</h1>
 		<p><em>This section is informative</em></p>
 
 		<p>This section provides a non-normative description of the event types that are deprecated in this document.</p>
@@ -7961,7 +7971,7 @@
 				href="#glossary-activation-trigger">activation triggers</a>.  Thus, when a <a class="eventtype" href="#event-type-click"><code>click</code></a> event is dispatched
 				by the DOM Level 3 Events <a class="def" href="#glossary-user-agent">user agent</a>, the XForms <a class="def" href="#glossary-user-agent">user agent</a> has to
 				determine whether to synthesize a <a class="eventtype" href="#event-type-DOMActivate"><code>DOMActivate</code></a> event with the same relevant properties as a
-				<a class="def" href="#glossary-default-action">default action</a> of that <a class="eventtype" href="#event-type-click"><code>click</code></a> event; appropriate
+				<a class="def" href="#glossary-default-action">default action</a> of that <a class="eventtype" href="#event-type-click"><code>click</code></a> event. Appropriate
 				cues might be whether the <a class="eventtype" href="#event-type-click"><code>click</code></a> event is <a href="#trusted-events">trusted</a>, or whether its <a
 				class="def" href="#glossary-event-target">event target</a> has a <a class="eventtype" href="#event-type-DOMActivate"><code>DOMActivate</code></a> event listener
 				registered.</p>
@@ -8275,9 +8285,11 @@
 							</tr>
 							<tr>
 								<th>Default action</th>
-								<td>Varies: launch <a class="def" href="#glossary-text-composition-system">text composition system</a>; <a class="eventtype" href="#event-type-blur"><code>blur</code></a>
-									and <a class="eventtype" href="#event-type-focus"><code>focus</code></a> events; <a class="eventtype" href="#event-type-DOMActivate"><code>DOMActivate</code></a>
-									event; other event</td>
+								<td>Varies:
+									launch <a class="def" href="#glossary-text-composition-system">text composition system</a>;
+									<a class="eventtype" href="#event-type-blur"><code>blur</code></a> and <a class="eventtype" href="#event-type-focus"><code>focus</code></a> events;
+									<a class="eventtype" href="#event-type-DOMActivate"><code>DOMActivate</code></a> event;
+									other event</td>
 							</tr>
 							<tr>
 								<th>Context info</th>
@@ -8310,7 +8322,7 @@
 										<li><a href="#widl-KeyboardEvent-repeat"><code class="attribute-name">KeyboardEvent.repeat</code></a>:
 											<code>true</code> if a key has been depressed long enough to trigger key repetition, otherwise <code>false</code></li>
 										<li><a href="#widl-KeyboardEvent-locale"><code class="attribute-name">KeyboardEvent.locale</code></a>:
-											the language code for the key event, if available; otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
+											the language code for the key event, if available. otherwise, the <a class="def" href="#glossary-empty-string">empty string</a></li>
 									</ul>
 								</td>
 							</tr>
@@ -8813,7 +8825,7 @@
 						</table>
 
 						<p>A <a class="def" href="#glossary-user-agent">user agent</a> MUST dispatch this event when a node has been inserted into a document, either through direct insertion
-							of the node or insertion of a subtree in which it is contained; a <a class="def" href="#glossary-user-agent">user agent</a> MAY  treat an <code>Attr</code>
+							of the node or insertion of a subtree in which it is contained. A <a class="def" href="#glossary-user-agent">user agent</a> MAY  treat an <code>Attr</code>
 							node as part of an <code>Element</code>'s subtree. This event MUST be dispatched after the insertion has taken place. The <a class="def" href="#glossary-event-target">
 							event target</a> of this event MUST be the node being inserted. If the node is being directly inserted, the event type <a class="eventtype" href="#event-type-DOMNodeInserted">
 							<code>DOMNodeInserted</code></a> MUST occur before this event type.</p>
@@ -8953,7 +8965,7 @@
 						</table>
 
 						<p>A <a class="def" href="#glossary-user-agent">user agent</a> MUST dispatch this event when a node is being removed from a document, either through direct removal
-							of the node or removal of a subtree in which it is contained; a <a class="def" href="#glossary-user-agent">user agent</a> MAY treat an <code>Attr</code>
+							of the node or removal of a subtree in which it is contained. A <a class="def" href="#glossary-user-agent">user agent</a> MAY treat an <code>Attr</code>
 							node as part of an <code>Element</code>'s subtree. This event MUST be dispatched before the removal takes place. The <a class="def" href="#glossary-event-target">event
 							target</a> of this event type MUST be the node being removed. If the node is being directly removed, the event type <a class="eventtype" href="#event-type-DOMNodeRemoved">
 							<code>DOMNodeRemoved</code></a> MUST occur before this event type.</p>
@@ -9039,14 +9051,14 @@
 
 	</section>
 	
-	<!-- Appendix C: Extending events ========================================================-->
+	<!-- Appendix D: Extending Events ========================================================-->
 	<section id="extending_events">
 		<h1>Extending Events</h1>
 		<p><em>This section is informative</em></p>
 
 		<section id="extending_events-intro">
 			<h2>Introduction</h2>
-			<p>This specification defines several interfaces and many events; however, this is not an exhaustive set of events for all purposes.  To allow content
+			<p>This specification defines several interfaces and many events, however, this is not an exhaustive set of events for all purposes.  To allow content
 				authors and implementers to add desired functionality, this specification provides two mechanisms for extend this set of interfaces and events without creating
 				conflicts: <a href="#extending_events-Custom_Events">custom events</a> and <a href="#extending_events-Impl_Extensions">implementation-specific extensions</a>.</p>
 		</section>
@@ -9091,11 +9103,11 @@
 				<p>After some time, another vendor, <q>BarOrg</q>, decides they also want the functionality, but implement it slightly differently, so they use their own vendor-specific
 					prefix, <code>"bar"</code> in their event type name, <a class="eventtype"><code>barJump</code></a>.  Content authors experimenting with this version of the
 					<a class="eventtype"><code>jump</code></a> event type register events with BarOrg's event type name.  Content authors who wish to write code that accounts for both browsers
-					can either register each event type separately with specific handlers, or use the same handler and switch on the name of the event type; thus, early experiments in different
+					can either register each event type separately with specific handlers, or use the same handler and switch on the name of the event type. Thus, early experiments in different
 					codebases do not conflict, and the early adopter is able to write easily-maintained code for multiple implementations.</p>
 
-				<p>Eventually, as the feature matures, the behavior of both browsers stabilize and might converge due to content author and user feedback or through formal standardization;
-					as this stabilization occurs, and risk of conflicts decrease, content authors can remove the forked code, and use the <a class="eventtype"><code>jump</code></a> event type name (even
+				<p>Eventually, as the feature matures, the behavior of both browsers stabilize and might converge due to content author and user feedback or through formal standardization.
+					As this stabilization occurs, and risk of conflicts decrease, content authors can remove the forked code, and use the <a class="eventtype"><code>jump</code></a> event type name (even
 					before it is formally standardized) using the same event handler and the more generic registration method <code>someElement.addEventListener( "jump", doJump, false)</code>.</p>
 			</div>
 
@@ -9132,13 +9144,13 @@
 		</section>
 	</section>
 
-	<!-- Appendix D: Security considerations ========================================================-->
+	<!-- Appendix E: Security Considerations ========================================================-->
 	<section id="security-considerations-Security">
 		<h1>Security Considerations</h1>
 
 		<p>This appendix discusses security considerations for DOM Level 3 Events implementations. The discussion is limited to security issues that arise directly
 			from implementation of the event model, APIs and events defined in this specification. Implementations typically support other features like scripting languages,
-			other APIs and additional events not defined in this document; these features constitute an unknown factor and are out of scope of this document. Implementers SHOULD
+			other APIs and additional events not defined in this document. These features constitute an unknown factor and are out of scope of this document. Implementers SHOULD
 			consult the specifications of such features for their respective security considerations.</p>
 
 		<p>Many of the event types defined in this specification are dispatched in response to user actions. This allows malicious event listeners to gain access to information
@@ -9148,8 +9160,8 @@
 			interface.</p>
 
 		<p>In DOM implementations that support facilities to load external data, events like the <a class="eventtype"><code>error</code></a> event can provide access to sensitive information about
-			the environment of the computer system or network; an example would be a malicious HTML document that attempts to embed a resource on the local network or the localhost
-			on different ports; an embedded <a class="def" href="#glossary-DOM-application">DOM application</a> could then listen for <a class="eventtype"><code>error</code></a>
+			the environment of the computer system or network. An example would be a malicious HTML document that attempts to embed a resource on the local network or the localhost
+			on different ports. An embedded <a class="def" href="#glossary-DOM-application">DOM application</a> could then listen for <a class="eventtype"><code>error</code></a>
 			and <a class="eventtype"><code>load</code></a> events to determine which other computers in a network are accessible from the local system or which ports are open on the
 			system to prepare further attacks.</p>
 
@@ -9159,7 +9171,7 @@
 			events to nodes that attempt to embed resources on the local network.</p>
 	</section>
 
-	<!-- Appendix E: Changes ========================================================-->
+	<!-- Appendix F: Changes ========================================================-->
 	<section id="changes-Changes">
 		<h1>Changes</h1>
 
@@ -9203,7 +9215,7 @@
 					<dt>Interface <a href="#interface-Event"><code>Event</code></a></dt>
 					<dd>The <a href="#interface-Event"><code>Event</code></a> interface has one new attribute, <a href="#widl-Event-defaultPrevented"><code>Event.defaultPrevented</code></a>,
 						and one new method, <a href="#widl-Event-stopImmediatePropagation"><code>Event.stopImmediatePropagation()</code></a>.<br />
-						<a href="#widl-Event-timeStamp"><code>Event.timeStamp</code></a> is now a <code>Number</code> in the ECMAScript binding; a proposed correction to make the
+						<a href="#widl-Event-timeStamp"><code>Event.timeStamp</code></a> is now a <code>Number</code> in the ECMAScript binding. A proposed correction to make the
 						same change in [<cite><a class="normative" href="#references-DOMCore">DOM3 Core</a></cite>] is forthcoming.<br />
 						DOM Level 3 Events considers the <a href="#widl-Event-type"><code>Event.type</code></a> attribute to be case-sensitive, while DOM Level 2 Events considers
 						<a href="#widl-Event-type#widl-Event-type"><code>Event.type</code></a> to be case-insensitive.</dd>
@@ -9270,7 +9282,7 @@
 		</section>
 	</section>
 
-	<!-- Appendix F: Acknowledgements ========================================================-->
+	<!-- Appendix G: Acknowledgements ========================================================-->
 	<section id="acknowledgements-contributors">
 		<h1>Acknowledgements</h1>
 
@@ -9313,7 +9325,7 @@
 
 			<p>The current drafts of this specification are lovingly hand-crafted in HTML and SVG, using ReSpec to format the document according to W3C requirements.</p>
 
-			<p>Earlier versions of this specification were written in XML; the HTML, OMG IDL, Java and ECMAScript bindings were all produced automatically.  Thanks to Joe English,
+			<p>Earlier versions of this specification were written in XML &mdash; the HTML, OMG IDL, Java and ECMAScript bindings were all produced automatically.  Thanks to Joe English,
 				author of <a class="normative" href="http://www.flightlab.com/cost/">cost</a>, which was used as the basis for producing DOM Level 1. Thanks also to Gavin Nicol,
 				who wrote the scripts which run on top of cost. Arnaud Le Hors and Philippe Le H&#xE9;garet maintained the scripts.</p>
 
@@ -9326,7 +9338,7 @@
 		</section>
 	</section>
 
-	<!-- Appendix G: References ========================================================-->
+	<!-- Appendix H: References ========================================================-->
 	<section id="references-role-references">
 		<h1>References</h1>
 
--- a/html/override.css	Mon Aug 26 09:28:47 2013 -0700
+++ b/html/override.css	Mon Aug 26 20:12:59 2013 -0700
@@ -78,6 +78,14 @@
 	margin: 0;
 }
 
+div.warning > p {
+	margin: 0.5em 0 0 0;
+}
+
+div.warning > p:first-child {
+	margin: -0.5em 0 0 0;
+}
+
 .example-title:before {
 	content: "Example ";
 }