8179367: update use of align, valign attributes in java.base to use style attribute
authorjjg
Wed, 26 Apr 2017 16:05:55 -0700
changeset 44846 b3f9f5bf40b2
parent 44845 3b829f6434d8
child 44847 cf230b81a508
8179367: update use of align, valign attributes in java.base to use style attribute Reviewed-by: martin, mchung
jdk/src/java.base/share/classes/java/io/RandomAccessFile.java
jdk/src/java.base/share/classes/java/lang/Class.java
jdk/src/java.base/share/classes/java/lang/String.java
jdk/src/java.base/share/classes/java/lang/reflect/AnnotatedElement.java
jdk/src/java.base/share/classes/java/math/RoundingMode.java
jdk/src/java.base/share/classes/java/nio/charset/Charset.java
jdk/src/java.base/share/classes/java/text/DecimalFormat.java
jdk/src/java.base/share/classes/java/text/SimpleDateFormat.java
jdk/src/java.base/share/classes/java/time/chrono/HijrahChronology.java
jdk/src/java.base/share/classes/java/time/chrono/IsoEra.java
jdk/src/java.base/share/classes/java/time/chrono/MinguoEra.java
jdk/src/java.base/share/classes/java/time/chrono/ThaiBuddhistEra.java
jdk/src/java.base/share/classes/java/time/format/DateTimeFormatter.java
jdk/src/java.base/share/classes/java/util/Deque.java
jdk/src/java.base/share/classes/java/util/Formatter.java
jdk/src/java.base/share/classes/java/util/Locale.java
jdk/src/java.base/share/classes/java/util/Queue.java
jdk/src/java.base/share/classes/java/util/concurrent/BlockingDeque.java
jdk/src/java.base/share/classes/java/util/concurrent/BlockingQueue.java
jdk/src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java
jdk/src/java.base/share/classes/java/util/regex/Pattern.java
--- a/jdk/src/java.base/share/classes/java/io/RandomAccessFile.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/io/RandomAccessFile.java	Wed Apr 26 16:05:55 2017 -0700
@@ -137,19 +137,19 @@
      * meanings are:
      *
      * <table summary="Access mode permitted values and meanings">
-     * <tr><th align="left">Value</th><th align="left">Meaning</th></tr>
-     * <tr><td valign="top">{@code "r"}</td>
+     * <tr><th style="text-align:left">Value</th><th style="text-align:left">Meaning</th></tr>
+     * <tr><td style="vertical-align:top">{@code "r"}</td>
      *     <td> Open for reading only. Invoking any of the {@code write}
      *     methods of the resulting object will cause an
      *     {@link java.io.IOException} to be thrown.</td></tr>
-     * <tr><td valign="top">{@code "rw"}</td>
+     * <tr><td style="vertical-align:top">{@code "rw"}</td>
      *     <td> Open for reading and writing.  If the file does not already
      *     exist then an attempt will be made to create it.</td></tr>
-     * <tr><td valign="top">{@code "rws"}</td>
+     * <tr><td style="vertical-align:top">{@code "rws"}</td>
      *     <td> Open for reading and writing, as with {@code "rw"}, and also
      *     require that every update to the file's content or metadata be
      *     written synchronously to the underlying storage device.</td></tr>
-     * <tr><td valign="top">{@code "rwd"}</td>
+     * <tr><td style="vertical-align:top">{@code "rwd"}</td>
      *     <td> Open for reading and writing, as with {@code "rw"}, and also
      *     require that every update to the file's content be written
      *     synchronously to the underlying storage device.</td></tr>
--- a/jdk/src/java.base/share/classes/java/lang/Class.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/Class.java	Wed Apr 26 16:05:55 2017 -0700
@@ -726,16 +726,16 @@
      *
      * <blockquote><table summary="Element types and encodings">
      * <tr><th> Element Type <th> &nbsp;&nbsp;&nbsp; <th> Encoding
-     * <tr><td> boolean      <td> &nbsp;&nbsp;&nbsp; <td align=center> Z
-     * <tr><td> byte         <td> &nbsp;&nbsp;&nbsp; <td align=center> B
-     * <tr><td> char         <td> &nbsp;&nbsp;&nbsp; <td align=center> C
+     * <tr><td> boolean      <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> Z
+     * <tr><td> byte         <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> B
+     * <tr><td> char         <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> C
      * <tr><td> class or interface
-     *                       <td> &nbsp;&nbsp;&nbsp; <td align=center> L<i>classname</i>;
-     * <tr><td> double       <td> &nbsp;&nbsp;&nbsp; <td align=center> D
-     * <tr><td> float        <td> &nbsp;&nbsp;&nbsp; <td align=center> F
-     * <tr><td> int          <td> &nbsp;&nbsp;&nbsp; <td align=center> I
-     * <tr><td> long         <td> &nbsp;&nbsp;&nbsp; <td align=center> J
-     * <tr><td> short        <td> &nbsp;&nbsp;&nbsp; <td align=center> S
+     *                       <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> L<i>classname</i>;
+     * <tr><td> double       <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> D
+     * <tr><td> float        <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> F
+     * <tr><td> int          <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> I
+     * <tr><td> long         <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> J
+     * <tr><td> short        <td> &nbsp;&nbsp;&nbsp; <td style="text-align:center"> S
      * </table></blockquote>
      *
      * <p> The class or interface name <i>classname</i> is the binary name of
--- a/jdk/src/java.base/share/classes/java/lang/String.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/String.java	Wed Apr 26 16:05:55 2017 -0700
@@ -2209,23 +2209,23 @@
      *     <th>Limit</th>
      *     <th>Result</th>
      * </tr>
-     * <tr><td align=center>:</td>
-     *     <td align=center>2</td>
+     * <tr><td style="text-align:center">:</td>
+     *     <td style="text-align:center">2</td>
      *     <td>{@code { "boo", "and:foo" }}</td></tr>
-     * <tr><td align=center>:</td>
-     *     <td align=center>5</td>
+     * <tr><td style="text-align:center">:</td>
+     *     <td style="text-align:center">5</td>
      *     <td>{@code { "boo", "and", "foo" }}</td></tr>
-     * <tr><td align=center>:</td>
-     *     <td align=center>-2</td>
+     * <tr><td style="text-align:center">:</td>
+     *     <td style="text-align:center">-2</td>
      *     <td>{@code { "boo", "and", "foo" }}</td></tr>
-     * <tr><td align=center>o</td>
-     *     <td align=center>5</td>
+     * <tr><td style="text-align:center">o</td>
+     *     <td style="text-align:center">5</td>
      *     <td>{@code { "b", "", ":and:f", "", "" }}</td></tr>
-     * <tr><td align=center>o</td>
-     *     <td align=center>-2</td>
+     * <tr><td style="text-align:center">o</td>
+     *     <td style="text-align:center">-2</td>
      *     <td>{@code { "b", "", ":and:f", "", "" }}</td></tr>
-     * <tr><td align=center>o</td>
-     *     <td align=center>0</td>
+     * <tr><td style="text-align:center">o</td>
+     *     <td style="text-align:center">0</td>
      *     <td>{@code { "b", "", ":and:f" }}</td></tr>
      * </table></blockquote>
      *
@@ -2331,9 +2331,9 @@
      *  <th>Regex</th>
      *  <th>Result</th>
      * </tr>
-     * <tr><td align=center>:</td>
+     * <tr><td style="text-align:center">:</td>
      *     <td>{@code { "boo", "and", "foo" }}</td></tr>
-     * <tr><td align=center>o</td>
+     * <tr><td style="text-align:center">o</td>
      *     <td>{@code { "b", "", ":and:f" }}</td></tr>
      * </table></blockquote>
      *
--- a/jdk/src/java.base/share/classes/java/lang/reflect/AnnotatedElement.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/reflect/AnnotatedElement.java	Wed Apr 26 16:05:55 2017 -0700
@@ -109,22 +109,22 @@
  * <caption>Overview of kind of presence detected by different AnnotatedElement methods</caption>
  * <tr><th colspan=2></th><th colspan=4>Kind of Presence</th>
  * <tr><th colspan=2>Method</th><th>Directly Present</th><th>Indirectly Present</th><th>Present</th><th>Associated</th>
- * <tr><td align=right>{@code T}</td><td>{@link #getAnnotation(Class) getAnnotation(Class&lt;T&gt;)}
+ * <tr><td style="text-align:right">{@code T}</td><td>{@link #getAnnotation(Class) getAnnotation(Class&lt;T&gt;)}
  * <td></td><td></td><td>X</td><td></td>
  * </tr>
- * <tr><td align=right>{@code Annotation[]}</td><td>{@link #getAnnotations getAnnotations()}
+ * <tr><td style="text-align:right">{@code Annotation[]}</td><td>{@link #getAnnotations getAnnotations()}
  * <td></td><td></td><td>X</td><td></td>
  * </tr>
- * <tr><td align=right>{@code T[]}</td><td>{@link #getAnnotationsByType(Class) getAnnotationsByType(Class&lt;T&gt;)}
+ * <tr><td style="text-align:right">{@code T[]}</td><td>{@link #getAnnotationsByType(Class) getAnnotationsByType(Class&lt;T&gt;)}
  * <td></td><td></td><td></td><td>X</td>
  * </tr>
- * <tr><td align=right>{@code T}</td><td>{@link #getDeclaredAnnotation(Class) getDeclaredAnnotation(Class&lt;T&gt;)}
+ * <tr><td style="text-align:right">{@code T}</td><td>{@link #getDeclaredAnnotation(Class) getDeclaredAnnotation(Class&lt;T&gt;)}
  * <td>X</td><td></td><td></td><td></td>
  * </tr>
- * <tr><td align=right>{@code Annotation[]}</td><td>{@link #getDeclaredAnnotations getDeclaredAnnotations()}
+ * <tr><td style="text-align:right">{@code Annotation[]}</td><td>{@link #getDeclaredAnnotations getDeclaredAnnotations()}
  * <td>X</td><td></td><td></td><td></td>
  * </tr>
- * <tr><td align=right>{@code T[]}</td><td>{@link #getDeclaredAnnotationsByType(Class) getDeclaredAnnotationsByType(Class&lt;T&gt;)}
+ * <tr><td style="text-align:right">{@code T[]}</td><td>{@link #getDeclaredAnnotationsByType(Class) getDeclaredAnnotationsByType(Class&lt;T&gt;)}
  * <td>X</td><td>X</td><td></td><td></td>
  * </tr>
  * </table>
--- a/jdk/src/java.base/share/classes/java/math/RoundingMode.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/math/RoundingMode.java	Wed Apr 26 16:05:55 2017 -0700
@@ -55,7 +55,7 @@
  * <caption><b>Summary of Rounding Operations Under Different Rounding Modes</b></caption>
  * <tr><th></th><th colspan=8>Result of rounding input to one digit with the given
  *                           rounding mode</th>
- * <tr valign=top>
+ * <tr style="vertical-align:top">
  * <th>Input Number</th>         <th>{@code UP}</th>
  *                                           <th>{@code DOWN}</th>
  *                                                        <th>{@code CEILING}</th>
@@ -65,16 +65,16 @@
  *                                                                                                                    <th>{@code HALF_EVEN}</th>
  *                                                                                                                                     <th>{@code UNNECESSARY}</th>
  *
- * <tr align=right><td>5.5</td>  <td>6</td>  <td>5</td>    <td>6</td>    <td>5</td>  <td>6</td>      <td>5</td>       <td>6</td>       <td>throw {@code ArithmeticException}</td>
- * <tr align=right><td>2.5</td>  <td>3</td>  <td>2</td>    <td>3</td>    <td>2</td>  <td>3</td>      <td>2</td>       <td>2</td>       <td>throw {@code ArithmeticException}</td>
- * <tr align=right><td>1.6</td>  <td>2</td>  <td>1</td>    <td>2</td>    <td>1</td>  <td>2</td>      <td>2</td>       <td>2</td>       <td>throw {@code ArithmeticException}</td>
- * <tr align=right><td>1.1</td>  <td>2</td>  <td>1</td>    <td>2</td>    <td>1</td>  <td>1</td>      <td>1</td>       <td>1</td>       <td>throw {@code ArithmeticException}</td>
- * <tr align=right><td>1.0</td>  <td>1</td>  <td>1</td>    <td>1</td>    <td>1</td>  <td>1</td>      <td>1</td>       <td>1</td>       <td>1</td>
- * <tr align=right><td>-1.0</td> <td>-1</td> <td>-1</td>   <td>-1</td>   <td>-1</td> <td>-1</td>     <td>-1</td>      <td>-1</td>      <td>-1</td>
- * <tr align=right><td>-1.1</td> <td>-2</td> <td>-1</td>   <td>-1</td>   <td>-2</td> <td>-1</td>     <td>-1</td>      <td>-1</td>      <td>throw {@code ArithmeticException}</td>
- * <tr align=right><td>-1.6</td> <td>-2</td> <td>-1</td>   <td>-1</td>   <td>-2</td> <td>-2</td>     <td>-2</td>      <td>-2</td>      <td>throw {@code ArithmeticException}</td>
- * <tr align=right><td>-2.5</td> <td>-3</td> <td>-2</td>   <td>-2</td>   <td>-3</td> <td>-3</td>     <td>-2</td>      <td>-2</td>      <td>throw {@code ArithmeticException}</td>
- * <tr align=right><td>-5.5</td> <td>-6</td> <td>-5</td>   <td>-5</td>   <td>-6</td> <td>-6</td>     <td>-5</td>      <td>-6</td>      <td>throw {@code ArithmeticException}</td>
+ * <tr style="text-align:right"><td>5.5</td>  <td>6</td>  <td>5</td>    <td>6</td>    <td>5</td>  <td>6</td>      <td>5</td>       <td>6</td>       <td>throw {@code ArithmeticException}</td>
+ * <tr style="text-align:right"><td>2.5</td>  <td>3</td>  <td>2</td>    <td>3</td>    <td>2</td>  <td>3</td>      <td>2</td>       <td>2</td>       <td>throw {@code ArithmeticException}</td>
+ * <tr style="text-align:right"><td>1.6</td>  <td>2</td>  <td>1</td>    <td>2</td>    <td>1</td>  <td>2</td>      <td>2</td>       <td>2</td>       <td>throw {@code ArithmeticException}</td>
+ * <tr style="text-align:right"><td>1.1</td>  <td>2</td>  <td>1</td>    <td>2</td>    <td>1</td>  <td>1</td>      <td>1</td>       <td>1</td>       <td>throw {@code ArithmeticException}</td>
+ * <tr style="text-align:right"><td>1.0</td>  <td>1</td>  <td>1</td>    <td>1</td>    <td>1</td>  <td>1</td>      <td>1</td>       <td>1</td>       <td>1</td>
+ * <tr style="text-align:right"><td>-1.0</td> <td>-1</td> <td>-1</td>   <td>-1</td>   <td>-1</td> <td>-1</td>     <td>-1</td>      <td>-1</td>      <td>-1</td>
+ * <tr style="text-align:right"><td>-1.1</td> <td>-2</td> <td>-1</td>   <td>-1</td>   <td>-2</td> <td>-1</td>     <td>-1</td>      <td>-1</td>      <td>throw {@code ArithmeticException}</td>
+ * <tr style="text-align:right"><td>-1.6</td> <td>-2</td> <td>-1</td>   <td>-1</td>   <td>-2</td> <td>-2</td>     <td>-2</td>      <td>-2</td>      <td>throw {@code ArithmeticException}</td>
+ * <tr style="text-align:right"><td>-2.5</td> <td>-3</td> <td>-2</td>   <td>-2</td>   <td>-3</td> <td>-3</td>     <td>-2</td>      <td>-2</td>      <td>throw {@code ArithmeticException}</td>
+ * <tr style="text-align:right"><td>-5.5</td> <td>-6</td> <td>-5</td>   <td>-5</td>   <td>-6</td> <td>-6</td>     <td>-5</td>      <td>-6</td>      <td>throw {@code ArithmeticException}</td>
  *</table>
  *
  *
@@ -102,18 +102,18 @@
          *<p>Example:
          *<table border>
          * <caption><b>Rounding mode UP Examples</b></caption>
-         *<tr valign=top><th>Input Number</th>
+         *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code UP} rounding
-         *<tr align=right><td>5.5</td>  <td>6</td>
-         *<tr align=right><td>2.5</td>  <td>3</td>
-         *<tr align=right><td>1.6</td>  <td>2</td>
-         *<tr align=right><td>1.1</td>  <td>2</td>
-         *<tr align=right><td>1.0</td>  <td>1</td>
-         *<tr align=right><td>-1.0</td> <td>-1</td>
-         *<tr align=right><td>-1.1</td> <td>-2</td>
-         *<tr align=right><td>-1.6</td> <td>-2</td>
-         *<tr align=right><td>-2.5</td> <td>-3</td>
-         *<tr align=right><td>-5.5</td> <td>-6</td>
+         *<tr style="text-align:right"><td>5.5</td>  <td>6</td>
+         *<tr style="text-align:right"><td>2.5</td>  <td>3</td>
+         *<tr style="text-align:right"><td>1.6</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.1</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
+         *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.1</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-2.5</td> <td>-3</td>
+         *<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
          *</table>
          */
     UP(BigDecimal.ROUND_UP),
@@ -126,18 +126,18 @@
          *<p>Example:
          *<table border>
          * <caption><b>Rounding mode DOWN Examples</b></caption>
-         *<tr valign=top><th>Input Number</th>
+         *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code DOWN} rounding
-         *<tr align=right><td>5.5</td>  <td>5</td>
-         *<tr align=right><td>2.5</td>  <td>2</td>
-         *<tr align=right><td>1.6</td>  <td>1</td>
-         *<tr align=right><td>1.1</td>  <td>1</td>
-         *<tr align=right><td>1.0</td>  <td>1</td>
-         *<tr align=right><td>-1.0</td> <td>-1</td>
-         *<tr align=right><td>-1.1</td> <td>-1</td>
-         *<tr align=right><td>-1.6</td> <td>-1</td>
-         *<tr align=right><td>-2.5</td> <td>-2</td>
-         *<tr align=right><td>-5.5</td> <td>-5</td>
+         *<tr style="text-align:right"><td>5.5</td>  <td>5</td>
+         *<tr style="text-align:right"><td>2.5</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.6</td>  <td>1</td>
+         *<tr style="text-align:right"><td>1.1</td>  <td>1</td>
+         *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
+         *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.1</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.6</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-5.5</td> <td>-5</td>
          *</table>
          */
     DOWN(BigDecimal.ROUND_DOWN),
@@ -151,18 +151,18 @@
          *<p>Example:
          *<table border>
          * <caption><b>Rounding mode CEILING Examples</b></caption>
-         *<tr valign=top><th>Input Number</th>
+         *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code CEILING} rounding
-         *<tr align=right><td>5.5</td>  <td>6</td>
-         *<tr align=right><td>2.5</td>  <td>3</td>
-         *<tr align=right><td>1.6</td>  <td>2</td>
-         *<tr align=right><td>1.1</td>  <td>2</td>
-         *<tr align=right><td>1.0</td>  <td>1</td>
-         *<tr align=right><td>-1.0</td> <td>-1</td>
-         *<tr align=right><td>-1.1</td> <td>-1</td>
-         *<tr align=right><td>-1.6</td> <td>-1</td>
-         *<tr align=right><td>-2.5</td> <td>-2</td>
-         *<tr align=right><td>-5.5</td> <td>-5</td>
+         *<tr style="text-align:right"><td>5.5</td>  <td>6</td>
+         *<tr style="text-align:right"><td>2.5</td>  <td>3</td>
+         *<tr style="text-align:right"><td>1.6</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.1</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
+         *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.1</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.6</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-5.5</td> <td>-5</td>
          *</table>
          */
     CEILING(BigDecimal.ROUND_CEILING),
@@ -176,18 +176,18 @@
          *<p>Example:
          *<table border>
          * <caption><b>Rounding mode FLOOR Examples</b></caption>
-         *<tr valign=top><th>Input Number</th>
+         *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code FLOOR} rounding
-         *<tr align=right><td>5.5</td>  <td>5</td>
-         *<tr align=right><td>2.5</td>  <td>2</td>
-         *<tr align=right><td>1.6</td>  <td>1</td>
-         *<tr align=right><td>1.1</td>  <td>1</td>
-         *<tr align=right><td>1.0</td>  <td>1</td>
-         *<tr align=right><td>-1.0</td> <td>-1</td>
-         *<tr align=right><td>-1.1</td> <td>-2</td>
-         *<tr align=right><td>-1.6</td> <td>-2</td>
-         *<tr align=right><td>-2.5</td> <td>-3</td>
-         *<tr align=right><td>-5.5</td> <td>-6</td>
+         *<tr style="text-align:right"><td>5.5</td>  <td>5</td>
+         *<tr style="text-align:right"><td>2.5</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.6</td>  <td>1</td>
+         *<tr style="text-align:right"><td>1.1</td>  <td>1</td>
+         *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
+         *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.1</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-2.5</td> <td>-3</td>
+         *<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
          *</table>
          */
     FLOOR(BigDecimal.ROUND_FLOOR),
@@ -203,18 +203,18 @@
          *<p>Example:
          *<table border>
          * <caption><b>Rounding mode HALF_UP Examples</b></caption>
-         *<tr valign=top><th>Input Number</th>
+         *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code HALF_UP} rounding
-         *<tr align=right><td>5.5</td>  <td>6</td>
-         *<tr align=right><td>2.5</td>  <td>3</td>
-         *<tr align=right><td>1.6</td>  <td>2</td>
-         *<tr align=right><td>1.1</td>  <td>1</td>
-         *<tr align=right><td>1.0</td>  <td>1</td>
-         *<tr align=right><td>-1.0</td> <td>-1</td>
-         *<tr align=right><td>-1.1</td> <td>-1</td>
-         *<tr align=right><td>-1.6</td> <td>-2</td>
-         *<tr align=right><td>-2.5</td> <td>-3</td>
-         *<tr align=right><td>-5.5</td> <td>-6</td>
+         *<tr style="text-align:right"><td>5.5</td>  <td>6</td>
+         *<tr style="text-align:right"><td>2.5</td>  <td>3</td>
+         *<tr style="text-align:right"><td>1.6</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.1</td>  <td>1</td>
+         *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
+         *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.1</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-2.5</td> <td>-3</td>
+         *<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
          *</table>
          */
     HALF_UP(BigDecimal.ROUND_HALF_UP),
@@ -229,18 +229,18 @@
          *<p>Example:
          *<table border>
          * <caption><b>Rounding mode HALF_DOWN Examples</b></caption>
-         *<tr valign=top><th>Input Number</th>
+         *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code HALF_DOWN} rounding
-         *<tr align=right><td>5.5</td>  <td>5</td>
-         *<tr align=right><td>2.5</td>  <td>2</td>
-         *<tr align=right><td>1.6</td>  <td>2</td>
-         *<tr align=right><td>1.1</td>  <td>1</td>
-         *<tr align=right><td>1.0</td>  <td>1</td>
-         *<tr align=right><td>-1.0</td> <td>-1</td>
-         *<tr align=right><td>-1.1</td> <td>-1</td>
-         *<tr align=right><td>-1.6</td> <td>-2</td>
-         *<tr align=right><td>-2.5</td> <td>-2</td>
-         *<tr align=right><td>-5.5</td> <td>-5</td>
+         *<tr style="text-align:right"><td>5.5</td>  <td>5</td>
+         *<tr style="text-align:right"><td>2.5</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.6</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.1</td>  <td>1</td>
+         *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
+         *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.1</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-5.5</td> <td>-5</td>
          *</table>
          */
     HALF_DOWN(BigDecimal.ROUND_HALF_DOWN),
@@ -262,18 +262,18 @@
          *<p>Example:
          *<table border>
          * <caption><b>Rounding mode HALF_EVEN Examples</b></caption>
-         *<tr valign=top><th>Input Number</th>
+         *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code HALF_EVEN} rounding
-         *<tr align=right><td>5.5</td>  <td>6</td>
-         *<tr align=right><td>2.5</td>  <td>2</td>
-         *<tr align=right><td>1.6</td>  <td>2</td>
-         *<tr align=right><td>1.1</td>  <td>1</td>
-         *<tr align=right><td>1.0</td>  <td>1</td>
-         *<tr align=right><td>-1.0</td> <td>-1</td>
-         *<tr align=right><td>-1.1</td> <td>-1</td>
-         *<tr align=right><td>-1.6</td> <td>-2</td>
-         *<tr align=right><td>-2.5</td> <td>-2</td>
-         *<tr align=right><td>-5.5</td> <td>-6</td>
+         *<tr style="text-align:right"><td>5.5</td>  <td>6</td>
+         *<tr style="text-align:right"><td>2.5</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.6</td>  <td>2</td>
+         *<tr style="text-align:right"><td>1.1</td>  <td>1</td>
+         *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
+         *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.1</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.6</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-2.5</td> <td>-2</td>
+         *<tr style="text-align:right"><td>-5.5</td> <td>-6</td>
          *</table>
          */
     HALF_EVEN(BigDecimal.ROUND_HALF_EVEN),
@@ -286,18 +286,18 @@
          *<p>Example:
          *<table border>
          * <caption><b>Rounding mode UNNECESSARY Examples</b></caption>
-         *<tr valign=top><th>Input Number</th>
+         *<tr style="vertical-align:top"><th>Input Number</th>
          *    <th>Input rounded to one digit<br> with {@code UNNECESSARY} rounding
-         *<tr align=right><td>5.5</td>  <td>throw {@code ArithmeticException}</td>
-         *<tr align=right><td>2.5</td>  <td>throw {@code ArithmeticException}</td>
-         *<tr align=right><td>1.6</td>  <td>throw {@code ArithmeticException}</td>
-         *<tr align=right><td>1.1</td>  <td>throw {@code ArithmeticException}</td>
-         *<tr align=right><td>1.0</td>  <td>1</td>
-         *<tr align=right><td>-1.0</td> <td>-1</td>
-         *<tr align=right><td>-1.1</td> <td>throw {@code ArithmeticException}</td>
-         *<tr align=right><td>-1.6</td> <td>throw {@code ArithmeticException}</td>
-         *<tr align=right><td>-2.5</td> <td>throw {@code ArithmeticException}</td>
-         *<tr align=right><td>-5.5</td> <td>throw {@code ArithmeticException}</td>
+         *<tr style="text-align:right"><td>5.5</td>  <td>throw {@code ArithmeticException}</td>
+         *<tr style="text-align:right"><td>2.5</td>  <td>throw {@code ArithmeticException}</td>
+         *<tr style="text-align:right"><td>1.6</td>  <td>throw {@code ArithmeticException}</td>
+         *<tr style="text-align:right"><td>1.1</td>  <td>throw {@code ArithmeticException}</td>
+         *<tr style="text-align:right"><td>1.0</td>  <td>1</td>
+         *<tr style="text-align:right"><td>-1.0</td> <td>-1</td>
+         *<tr style="text-align:right"><td>-1.1</td> <td>throw {@code ArithmeticException}</td>
+         *<tr style="text-align:right"><td>-1.6</td> <td>throw {@code ArithmeticException}</td>
+         *<tr style="text-align:right"><td>-2.5</td> <td>throw {@code ArithmeticException}</td>
+         *<tr style="text-align:right"><td>-5.5</td> <td>throw {@code ArithmeticException}</td>
          *</table>
          */
     UNNECESSARY(BigDecimal.ROUND_UNNECESSARY);
--- a/jdk/src/java.base/share/classes/java/nio/charset/Charset.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/nio/charset/Charset.java	Wed Apr 26 16:05:55 2017 -0700
@@ -148,21 +148,21 @@
  * of such optional charsets may differ between implementations.
  *
  * <blockquote><table width="80%" summary="Description of standard charsets">
- * <tr><th align="left">Charset</th><th align="left">Description</th></tr>
- * <tr><td valign=top>{@code US-ASCII}</td>
+ * <tr><th style="text-align:left">Charset</th><th style="text-align:left">Description</th></tr>
+ * <tr><td style="vertical-align:top">{@code US-ASCII}</td>
  *     <td>Seven-bit ASCII, a.k.a. {@code ISO646-US},
  *         a.k.a. the Basic Latin block of the Unicode character set</td></tr>
- * <tr><td valign=top><code>ISO-8859-1&nbsp;&nbsp;</code></td>
+ * <tr><td style="vertical-align:top"><code>ISO-8859-1&nbsp;&nbsp;</code></td>
  *     <td>ISO Latin Alphabet No. 1, a.k.a. {@code ISO-LATIN-1}</td></tr>
- * <tr><td valign=top>{@code UTF-8}</td>
+ * <tr><td style="vertical-align:top">{@code UTF-8}</td>
  *     <td>Eight-bit UCS Transformation Format</td></tr>
- * <tr><td valign=top>{@code UTF-16BE}</td>
+ * <tr><td style="vertical-align:top">{@code UTF-16BE}</td>
  *     <td>Sixteen-bit UCS Transformation Format,
  *         big-endian byte&nbsp;order</td></tr>
- * <tr><td valign=top>{@code UTF-16LE}</td>
+ * <tr><td style="vertical-align:top">{@code UTF-16LE}</td>
  *     <td>Sixteen-bit UCS Transformation Format,
  *         little-endian byte&nbsp;order</td></tr>
- * <tr><td valign=top>{@code UTF-16}</td>
+ * <tr><td style="vertical-align:top">{@code UTF-16}</td>
  *     <td>Sixteen-bit UCS Transformation Format,
  *         byte&nbsp;order identified by an optional byte-order mark</td></tr>
  * </table></blockquote>
--- a/jdk/src/java.base/share/classes/java/text/DecimalFormat.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/text/DecimalFormat.java	Wed Apr 26 16:05:55 2017 -0700
@@ -175,11 +175,11 @@
  * <table border=0 cellspacing=3 cellpadding=0 summary="Chart showing symbol,
  *  location, localized, and meaning.">
  *     <tr style="background-color: rgb(204, 204, 255);">
- *          <th align=left>Symbol
- *          <th align=left>Location
- *          <th align=left>Localized?
- *          <th align=left>Meaning
- *     <tr valign=top>
+ *          <th style="text-align:left">Symbol
+ *          <th style="text-align:left">Location
+ *          <th style="text-align:left">Localized?
+ *          <th style="text-align:left">Meaning
+ *     <tr style="vertical-align:top">
  *          <td><code>0</code>
  *          <td>Number
  *          <td>Yes
@@ -189,7 +189,7 @@
  *          <td>Number
  *          <td>Yes
  *          <td>Digit, zero shows as absent
- *     <tr valign=top>
+ *     <tr style="vertical-align:top">
  *          <td><code>.</code>
  *          <td>Number
  *          <td>Yes
@@ -199,7 +199,7 @@
  *          <td>Number
  *          <td>Yes
  *          <td>Minus sign
- *     <tr valign=top>
+ *     <tr style="vertical-align:top">
  *          <td><code>,</code>
  *          <td>Number
  *          <td>Yes
@@ -210,7 +210,7 @@
  *          <td>Yes
  *          <td>Separates mantissa and exponent in scientific notation.
  *              <em>Need not be quoted in prefix or suffix.</em>
- *     <tr valign=top>
+ *     <tr style="vertical-align:top">
  *          <td><code>;</code>
  *          <td>Subpattern boundary
  *          <td>Yes
@@ -220,7 +220,7 @@
  *          <td>Prefix or suffix
  *          <td>Yes
  *          <td>Multiply by 100 and show as percentage
- *     <tr valign=top>
+ *     <tr style="vertical-align:top">
  *          <td><code>&#92;u2030</code>
  *          <td>Prefix or suffix
  *          <td>Yes
@@ -233,7 +233,7 @@
  *              doubled, replaced by international currency symbol.
  *              If present in a pattern, the monetary decimal separator
  *              is used instead of the decimal separator.
- *     <tr valign=top>
+ *     <tr style="vertical-align:top">
  *          <td><code>'</code>
  *          <td>Prefix or suffix
  *          <td>No
--- a/jdk/src/java.base/share/classes/java/text/SimpleDateFormat.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/text/SimpleDateFormat.java	Wed Apr 26 16:05:55 2017 -0700
@@ -94,10 +94,10 @@
  * <blockquote>
  * <table border=0 cellspacing=3 cellpadding=0 summary="Chart shows pattern letters, date/time component, presentation, and examples.">
  *     <tr style="background-color: rgb(204, 204, 255);">
- *         <th align=left>Letter
- *         <th align=left>Date or Time Component
- *         <th align=left>Presentation
- *         <th align=left>Examples
+ *         <th style="text-align:left">Letter
+ *         <th style="text-align:left">Date or Time Component
+ *         <th style="text-align:left">Presentation
+ *         <th style="text-align:left">Examples
  *     <tr>
  *         <td><code>G</code>
  *         <td>Era designator
@@ -372,8 +372,8 @@
  * <blockquote>
  * <table border=0 cellspacing=3 cellpadding=0 summary="Examples of date and time patterns interpreted in the U.S. locale">
  *     <tr style="background-color: rgb(204, 204, 255);">
- *         <th align=left>Date and Time Pattern
- *         <th align=left>Result
+ *         <th style="text-align:left">Date and Time Pattern
+ *         <th style="text-align:left">Result
  *     <tr>
  *         <td><code>"yyyy.MM.dd G 'at' HH:mm:ss z"</code>
  *         <td><code>2001.07.04 AD at 12:08:56 PDT</code>
--- a/jdk/src/java.base/share/classes/java/time/chrono/HijrahChronology.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/time/chrono/HijrahChronology.java	Wed Apr 26 16:05:55 2017 -0700
@@ -106,10 +106,10 @@
  * <table cellpadding="2" summary="Variants of Hijrah Calendars">
  * <thead>
  * <tr class="tableSubHeadingColor">
- * <th class="colFirst" align="left" >Chronology ID</th>
- * <th class="colFirst" align="left" >Calendar Type</th>
- * <th class="colFirst" align="left" >Locale extension, see {@link java.util.Locale}</th>
- * <th class="colLast" align="left" >Description</th>
+ * <th class="colFirst" style="text-align:left" >Chronology ID</th>
+ * <th class="colFirst" style="text-align:left" >Calendar Type</th>
+ * <th class="colFirst" style="text-align:left" >Locale extension, see {@link java.util.Locale}</th>
+ * <th class="colLast" style="text-align:left" >Description</th>
  * </tr>
  * </thead>
  * <tbody>
@@ -150,9 +150,9 @@
  * <table cellpadding="2" summary="Configuration of Hijrah Calendar">
  * <thead>
  * <tr class="tableSubHeadingColor">
- * <th class="colFirst" align="left" > Property Name</th>
- * <th class="colFirst" align="left" > Property value</th>
- * <th class="colLast" align="left" > Description </th>
+ * <th class="colFirst" style="text-align:left" > Property Name</th>
+ * <th class="colFirst" style="text-align:left" > Property value</th>
+ * <th class="colLast" style="text-align:left" > Description </th>
  * </tr>
  * </thead>
  * <tbody>
--- a/jdk/src/java.base/share/classes/java/time/chrono/IsoEra.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/time/chrono/IsoEra.java	Wed Apr 26 16:05:55 2017 -0700
@@ -73,9 +73,9 @@
  * <table summary="ISO years and eras" cellpadding="2" cellspacing="3" border="0" >
  * <thead>
  * <tr class="tableSubHeadingColor">
- * <th class="colFirst" align="left">year-of-era</th>
- * <th class="colFirst" align="left">era</th>
- * <th class="colLast" align="left">proleptic-year</th>
+ * <th class="colFirst" style="text-align:left">year-of-era</th>
+ * <th class="colFirst" style="text-align:left">era</th>
+ * <th class="colLast" style="text-align:left">proleptic-year</th>
  * </tr>
  * </thead>
  * <tbody>
--- a/jdk/src/java.base/share/classes/java/time/chrono/MinguoEra.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/time/chrono/MinguoEra.java	Wed Apr 26 16:05:55 2017 -0700
@@ -74,10 +74,10 @@
  * <table summary="Minguo years and eras" cellpadding="2" cellspacing="3" border="0" >
  * <thead>
  * <tr class="tableSubHeadingColor">
- * <th class="colFirst" align="left">year-of-era</th>
- * <th class="colFirst" align="left">era</th>
- * <th class="colFirst" align="left">proleptic-year</th>
- * <th class="colLast" align="left">ISO proleptic-year</th>
+ * <th class="colFirst" style="text-align:left">year-of-era</th>
+ * <th class="colFirst" style="text-align:left">era</th>
+ * <th class="colFirst" style="text-align:left">proleptic-year</th>
+ * <th class="colLast" style="text-align:left">ISO proleptic-year</th>
  * </tr>
  * </thead>
  * <tbody>
--- a/jdk/src/java.base/share/classes/java/time/chrono/ThaiBuddhistEra.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/time/chrono/ThaiBuddhistEra.java	Wed Apr 26 16:05:55 2017 -0700
@@ -74,10 +74,10 @@
  * <table summary="Buddhist years and eras" cellpadding="2" cellspacing="3" border="0" >
  * <thead>
  * <tr class="tableSubHeadingColor">
- * <th class="colFirst" align="left">year-of-era</th>
- * <th class="colFirst" align="left">era</th>
- * <th class="colFirst" align="left">proleptic-year</th>
- * <th class="colLast" align="left">ISO proleptic-year</th>
+ * <th class="colFirst" style="text-align:left">year-of-era</th>
+ * <th class="colFirst" style="text-align:left">era</th>
+ * <th class="colFirst" style="text-align:left">proleptic-year</th>
+ * <th class="colLast" style="text-align:left">ISO proleptic-year</th>
  * </tr>
  * </thead>
  * <tbody>
--- a/jdk/src/java.base/share/classes/java/time/format/DateTimeFormatter.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/time/format/DateTimeFormatter.java	Wed Apr 26 16:05:55 2017 -0700
@@ -153,9 +153,9 @@
  * <table summary="Predefined Formatters" cellpadding="2" cellspacing="3" border="0" >
  * <thead>
  * <tr class="tableSubHeadingColor">
- * <th class="colFirst" align="left">Formatter</th>
- * <th class="colFirst" align="left">Description</th>
- * <th class="colLast" align="left">Example</th>
+ * <th class="colFirst" style="text-align:left">Formatter</th>
+ * <th class="colFirst" style="text-align:left">Description</th>
+ * <th class="colLast" style="text-align:left">Example</th>
  * </tr>
  * </thead>
  * <tbody>
--- a/jdk/src/java.base/share/classes/java/util/Deque.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/util/Deque.java	Wed Apr 26 16:05:55 2017 -0700
@@ -60,15 +60,15 @@
  * <caption>Summary of Deque methods</caption>
  *  <tr>
  *    <td></td>
- *    <td ALIGN=CENTER COLSPAN = 2> <b>First Element (Head)</b></td>
- *    <td ALIGN=CENTER COLSPAN = 2> <b>Last Element (Tail)</b></td>
+ *    <td style="text-align:center" COLSPAN = 2> <b>First Element (Head)</b></td>
+ *    <td style="text-align:center" COLSPAN = 2> <b>Last Element (Tail)</b></td>
  *  </tr>
  *  <tr>
  *    <td></td>
- *    <td ALIGN=CENTER><em>Throws exception</em></td>
- *    <td ALIGN=CENTER><em>Special value</em></td>
- *    <td ALIGN=CENTER><em>Throws exception</em></td>
- *    <td ALIGN=CENTER><em>Special value</em></td>
+ *    <td style="text-align:center"><em>Throws exception</em></td>
+ *    <td style="text-align:center"><em>Special value</em></td>
+ *    <td style="text-align:center"><em>Throws exception</em></td>
+ *    <td style="text-align:center"><em>Special value</em></td>
  *  </tr>
  *  <tr>
  *    <td><b>Insert</b></td>
@@ -102,8 +102,8 @@
  * <table BORDER CELLPADDING=3 CELLSPACING=1>
  * <caption>Comparison of Queue and Deque methods</caption>
  *  <tr>
- *    <td ALIGN=CENTER> <b>{@code Queue} Method</b></td>
- *    <td ALIGN=CENTER> <b>Equivalent {@code Deque} Method</b></td>
+ *    <td style="text-align:center"> <b>{@code Queue} Method</b></td>
+ *    <td style="text-align:center"> <b>Equivalent {@code Deque} Method</b></td>
  *  </tr>
  *  <tr>
  *    <td>{@link java.util.Queue#add add(e)}</td>
@@ -140,8 +140,8 @@
  * <table BORDER CELLPADDING=3 CELLSPACING=1>
  * <caption>Comparison of Stack and Deque methods</caption>
  *  <tr>
- *    <td ALIGN=CENTER> <b>Stack Method</b></td>
- *    <td ALIGN=CENTER> <b>Equivalent {@code Deque} Method</b></td>
+ *    <td style="text-align:center"> <b>Stack Method</b></td>
+ *    <td style="text-align:center"> <b>Equivalent {@code Deque} Method</b></td>
  *  </tr>
  *  <tr>
  *    <td>{@link #push push(e)}</td>
--- a/jdk/src/java.base/share/classes/java/util/Formatter.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/util/Formatter.java	Wed Apr 26 16:05:55 2017 -0700
@@ -292,77 +292,77 @@
  *
  * <table cellpadding=5 summary="genConv">
  *
- * <tr><th valign="bottom"> Conversion
- *     <th valign="bottom"> Argument Category
- *     <th valign="bottom"> Description
- *
- * <tr><td valign="top"> {@code 'b'}, {@code 'B'}
- *     <td valign="top"> general
+ * <tr><th style="vertical-align:bottom"> Conversion
+ *     <th style="vertical-align:bottom"> Argument Category
+ *     <th style="vertical-align:bottom"> Description
+ *
+ * <tr><td style="vertical-align:top"> {@code 'b'}, {@code 'B'}
+ *     <td style="vertical-align:top"> general
  *     <td> If the argument <i>arg</i> is {@code null}, then the result is
  *     "{@code false}".  If <i>arg</i> is a {@code boolean} or {@link
  *     Boolean}, then the result is the string returned by {@link
  *     String#valueOf(boolean) String.valueOf(arg)}.  Otherwise, the result is
  *     "true".
  *
- * <tr><td valign="top"> {@code 'h'}, {@code 'H'}
- *     <td valign="top"> general
+ * <tr><td style="vertical-align:top"> {@code 'h'}, {@code 'H'}
+ *     <td style="vertical-align:top"> general
  *     <td> The result is obtained by invoking
  *     {@code Integer.toHexString(arg.hashCode())}.
  *
- * <tr><td valign="top"> {@code 's'}, {@code 'S'}
- *     <td valign="top"> general
+ * <tr><td style="vertical-align:top"> {@code 's'}, {@code 'S'}
+ *     <td style="vertical-align:top"> general
  *     <td> If <i>arg</i> implements {@link Formattable}, then
  *     {@link Formattable#formatTo arg.formatTo} is invoked. Otherwise, the
  *     result is obtained by invoking {@code arg.toString()}.
  *
- * <tr><td valign="top">{@code 'c'}, {@code 'C'}
- *     <td valign="top"> character
+ * <tr><td style="vertical-align:top">{@code 'c'}, {@code 'C'}
+ *     <td style="vertical-align:top"> character
  *     <td> The result is a Unicode character
  *
- * <tr><td valign="top">{@code 'd'}
- *     <td valign="top"> integral
+ * <tr><td style="vertical-align:top">{@code 'd'}
+ *     <td style="vertical-align:top"> integral
  *     <td> The result is formatted as a decimal integer
  *
- * <tr><td valign="top">{@code 'o'}
- *     <td valign="top"> integral
+ * <tr><td style="vertical-align:top">{@code 'o'}
+ *     <td style="vertical-align:top"> integral
  *     <td> The result is formatted as an octal integer
  *
- * <tr><td valign="top">{@code 'x'}, {@code 'X'}
- *     <td valign="top"> integral
+ * <tr><td style="vertical-align:top">{@code 'x'}, {@code 'X'}
+ *     <td style="vertical-align:top"> integral
  *     <td> The result is formatted as a hexadecimal integer
  *
- * <tr><td valign="top">{@code 'e'}, {@code 'E'}
- *     <td valign="top"> floating point
+ * <tr><td style="vertical-align:top">{@code 'e'}, {@code 'E'}
+ *     <td style="vertical-align:top"> floating point
  *     <td> The result is formatted as a decimal number in computerized
  *     scientific notation
  *
- * <tr><td valign="top">{@code 'f'}
- *     <td valign="top"> floating point
+ * <tr><td style="vertical-align:top">{@code 'f'}
+ *     <td style="vertical-align:top"> floating point
  *     <td> The result is formatted as a decimal number
  *
- * <tr><td valign="top">{@code 'g'}, {@code 'G'}
- *     <td valign="top"> floating point
+ * <tr><td style="vertical-align:top">{@code 'g'}, {@code 'G'}
+ *     <td style="vertical-align:top"> floating point
  *     <td> The result is formatted using computerized scientific notation or
  *     decimal format, depending on the precision and the value after rounding.
  *
- * <tr><td valign="top">{@code 'a'}, {@code 'A'}
- *     <td valign="top"> floating point
+ * <tr><td style="vertical-align:top">{@code 'a'}, {@code 'A'}
+ *     <td style="vertical-align:top"> floating point
  *     <td> The result is formatted as a hexadecimal floating-point number with
  *     a significand and an exponent. This conversion is <b>not</b> supported
  *     for the {@code BigDecimal} type despite the latter's being in the
  *     <i>floating point</i> argument category.
  *
- * <tr><td valign="top">{@code 't'}, {@code 'T'}
- *     <td valign="top"> date/time
+ * <tr><td style="vertical-align:top">{@code 't'}, {@code 'T'}
+ *     <td style="vertical-align:top"> date/time
  *     <td> Prefix for date and time conversion characters.  See <a
  *     href="#dt">Date/Time Conversions</a>.
  *
- * <tr><td valign="top">{@code '%'}
- *     <td valign="top"> percent
+ * <tr><td style="vertical-align:top">{@code '%'}
+ *     <td style="vertical-align:top"> percent
  *     <td> The result is a literal {@code '%'} (<code>'&#92;u0025'</code>)
  *
- * <tr><td valign="top">{@code 'n'}
- *     <td valign="top"> line separator
+ * <tr><td style="vertical-align:top">{@code 'n'}
+ *     <td style="vertical-align:top"> line separator
  *     <td> The result is the platform-specific line separator
  *
  * </table>
@@ -383,44 +383,44 @@
  *
  * <table cellpadding=5 summary="time">
  *
- * <tr><td valign="top"> {@code 'H'}
+ * <tr><td style="vertical-align:top"> {@code 'H'}
  *     <td> Hour of the day for the 24-hour clock, formatted as two digits with
  *     a leading zero as necessary i.e. {@code 00 - 23}.
  *
- * <tr><td valign="top">{@code 'I'}
+ * <tr><td style="vertical-align:top">{@code 'I'}
  *     <td> Hour for the 12-hour clock, formatted as two digits with a leading
  *     zero as necessary, i.e.  {@code 01 - 12}.
  *
- * <tr><td valign="top">{@code 'k'}
+ * <tr><td style="vertical-align:top">{@code 'k'}
  *     <td> Hour of the day for the 24-hour clock, i.e. {@code 0 - 23}.
  *
- * <tr><td valign="top">{@code 'l'}
+ * <tr><td style="vertical-align:top">{@code 'l'}
  *     <td> Hour for the 12-hour clock, i.e. {@code 1 - 12}.
  *
- * <tr><td valign="top">{@code 'M'}
+ * <tr><td style="vertical-align:top">{@code 'M'}
  *     <td> Minute within the hour formatted as two digits with a leading zero
  *     as necessary, i.e.  {@code 00 - 59}.
  *
- * <tr><td valign="top">{@code 'S'}
+ * <tr><td style="vertical-align:top">{@code 'S'}
  *     <td> Seconds within the minute, formatted as two digits with a leading
  *     zero as necessary, i.e. {@code 00 - 60} ("{@code 60}" is a special
  *     value required to support leap seconds).
  *
- * <tr><td valign="top">{@code 'L'}
+ * <tr><td style="vertical-align:top">{@code 'L'}
  *     <td> Millisecond within the second formatted as three digits with
  *     leading zeros as necessary, i.e. {@code 000 - 999}.
  *
- * <tr><td valign="top">{@code 'N'}
+ * <tr><td style="vertical-align:top">{@code 'N'}
  *     <td> Nanosecond within the second, formatted as nine digits with leading
  *     zeros as necessary, i.e. {@code 000000000 - 999999999}.
  *
- * <tr><td valign="top">{@code 'p'}
+ * <tr><td style="vertical-align:top">{@code 'p'}
  *     <td> Locale-specific {@linkplain
  *     java.text.DateFormatSymbols#getAmPmStrings morning or afternoon} marker
  *     in lower case, e.g."{@code am}" or "{@code pm}". Use of the conversion
  *     prefix {@code 'T'} forces this output to upper case.
  *
- * <tr><td valign="top">{@code 'z'}
+ * <tr><td style="vertical-align:top">{@code 'z'}
  *     <td> <a href="http://www.ietf.org/rfc/rfc0822.txt">RFC&nbsp;822</a>
  *     style numeric time zone offset from GMT, e.g. {@code -0800}.  This
  *     value will be adjusted as necessary for Daylight Saving Time.  For
@@ -428,7 +428,7 @@
  *     the {@linkplain TimeZone#getDefault() default time zone} for this
  *     instance of the Java virtual machine.
  *
- * <tr><td valign="top">{@code 'Z'}
+ * <tr><td style="vertical-align:top">{@code 'Z'}
  *     <td> A string representing the abbreviation for the time zone.  This
  *     value will be adjusted as necessary for Daylight Saving Time.  For
  *     {@code long}, {@link Long}, and {@link Date} the  time zone used is
@@ -436,12 +436,12 @@
  *     instance of the Java virtual machine.  The Formatter's locale will
  *     supersede the locale of the argument (if any).
  *
- * <tr><td valign="top">{@code 's'}
+ * <tr><td style="vertical-align:top">{@code 's'}
  *     <td> Seconds since the beginning of the epoch starting at 1 January 1970
  *     {@code 00:00:00} UTC, i.e. {@code Long.MIN_VALUE/1000} to
  *     {@code Long.MAX_VALUE/1000}.
  *
- * <tr><td valign="top">{@code 'Q'}
+ * <tr><td style="vertical-align:top">{@code 'Q'}
  *     <td> Milliseconds since the beginning of the epoch starting at 1 January
  *     1970 {@code 00:00:00} UTC, i.e. {@code Long.MIN_VALUE} to
  *     {@code Long.MAX_VALUE}.
@@ -452,54 +452,54 @@
  *
  * <table cellpadding=5 summary="date">
  *
- * <tr><td valign="top">{@code 'B'}
+ * <tr><td style="vertical-align:top">{@code 'B'}
  *     <td> Locale-specific {@linkplain java.text.DateFormatSymbols#getMonths
  *     full month name}, e.g. {@code "January"}, {@code "February"}.
  *
- * <tr><td valign="top">{@code 'b'}
+ * <tr><td style="vertical-align:top">{@code 'b'}
  *     <td> Locale-specific {@linkplain
  *     java.text.DateFormatSymbols#getShortMonths abbreviated month name},
  *     e.g. {@code "Jan"}, {@code "Feb"}.
  *
- * <tr><td valign="top">{@code 'h'}
+ * <tr><td style="vertical-align:top">{@code 'h'}
  *     <td> Same as {@code 'b'}.
  *
- * <tr><td valign="top">{@code 'A'}
+ * <tr><td style="vertical-align:top">{@code 'A'}
  *     <td> Locale-specific full name of the {@linkplain
  *     java.text.DateFormatSymbols#getWeekdays day of the week},
  *     e.g. {@code "Sunday"}, {@code "Monday"}
  *
- * <tr><td valign="top">{@code 'a'}
+ * <tr><td style="vertical-align:top">{@code 'a'}
  *     <td> Locale-specific short name of the {@linkplain
  *     java.text.DateFormatSymbols#getShortWeekdays day of the week},
  *     e.g. {@code "Sun"}, {@code "Mon"}
  *
- * <tr><td valign="top">{@code 'C'}
+ * <tr><td style="vertical-align:top">{@code 'C'}
  *     <td> Four-digit year divided by {@code 100}, formatted as two digits
  *     with leading zero as necessary, i.e. {@code 00 - 99}
  *
- * <tr><td valign="top">{@code 'Y'}
+ * <tr><td style="vertical-align:top">{@code 'Y'}
  *     <td> Year, formatted as at least four digits with leading zeros as
  *     necessary, e.g. {@code 0092} equals {@code 92} CE for the Gregorian
  *     calendar.
  *
- * <tr><td valign="top">{@code 'y'}
+ * <tr><td style="vertical-align:top">{@code 'y'}
  *     <td> Last two digits of the year, formatted with leading zeros as
  *     necessary, i.e. {@code 00 - 99}.
  *
- * <tr><td valign="top">{@code 'j'}
+ * <tr><td style="vertical-align:top">{@code 'j'}
  *     <td> Day of year, formatted as three digits with leading zeros as
  *     necessary, e.g. {@code 001 - 366} for the Gregorian calendar.
  *
- * <tr><td valign="top">{@code 'm'}
+ * <tr><td style="vertical-align:top">{@code 'm'}
  *     <td> Month, formatted as two digits with leading zeros as necessary,
  *     i.e. {@code 01 - 13}.
  *
- * <tr><td valign="top">{@code 'd'}
+ * <tr><td style="vertical-align:top">{@code 'd'}
  *     <td> Day of month, formatted as two digits with leading zeros as
  *     necessary, i.e. {@code 01 - 31}
  *
- * <tr><td valign="top">{@code 'e'}
+ * <tr><td style="vertical-align:top">{@code 'e'}
  *     <td> Day of month, formatted as two digits, i.e. {@code 1 - 31}.
  *
  * </table>
@@ -509,25 +509,25 @@
  *
  * <table cellpadding=5 summary="composites">
  *
- * <tr><td valign="top">{@code 'R'}
+ * <tr><td style="vertical-align:top">{@code 'R'}
  *     <td> Time formatted for the 24-hour clock as {@code "%tH:%tM"}
  *
- * <tr><td valign="top">{@code 'T'}
+ * <tr><td style="vertical-align:top">{@code 'T'}
  *     <td> Time formatted for the 24-hour clock as {@code "%tH:%tM:%tS"}.
  *
- * <tr><td valign="top">{@code 'r'}
+ * <tr><td style="vertical-align:top">{@code 'r'}
  *     <td> Time formatted for the 12-hour clock as {@code "%tI:%tM:%tS %Tp"}.
  *     The location of the morning or afternoon marker ({@code '%Tp'}) may be
  *     locale-dependent.
  *
- * <tr><td valign="top">{@code 'D'}
+ * <tr><td style="vertical-align:top">{@code 'D'}
  *     <td> Date formatted as {@code "%tm/%td/%ty"}.
  *
- * <tr><td valign="top">{@code 'F'}
+ * <tr><td style="vertical-align:top">{@code 'F'}
  *     <td> <a href="http://www.w3.org/TR/NOTE-datetime">ISO&nbsp;8601</a>
  *     complete date formatted as {@code "%tY-%tm-%td"}.
  *
- * <tr><td valign="top">{@code 'c'}
+ * <tr><td style="vertical-align:top">{@code 'c'}
  *     <td> Date and time formatted as {@code "%ta %tb %td %tT %tZ %tY"},
  *     e.g. {@code "Sun Jul 20 16:17:00 EDT 1969"}.
  *
@@ -543,60 +543,60 @@
  *
  * <table cellpadding=5 summary="genConv">
  *
- * <tr><th valign="bottom"> Flag <th valign="bottom"> General
- *     <th valign="bottom"> Character <th valign="bottom"> Integral
- *     <th valign="bottom"> Floating Point
- *     <th valign="bottom"> Date/Time
- *     <th valign="bottom"> Description
- *
- * <tr><td> '-' <td align="center" valign="top"> y
- *     <td align="center" valign="top"> y
- *     <td align="center" valign="top"> y
- *     <td align="center" valign="top"> y
- *     <td align="center" valign="top"> y
+ * <tr><th style="vertical-align:bottom"> Flag <th style="vertical-align:bottom"> General
+ *     <th style="vertical-align:bottom"> Character <th style="vertical-align:bottom"> Integral
+ *     <th style="vertical-align:bottom"> Floating Point
+ *     <th style="vertical-align:bottom"> Date/Time
+ *     <th style="vertical-align:bottom"> Description
+ *
+ * <tr><td> '-' <td style="text-align:center; vertical-align:top"> y
+ *     <td style="text-align:center; vertical-align:top"> y
+ *     <td style="text-align:center; vertical-align:top"> y
+ *     <td style="text-align:center; vertical-align:top"> y
+ *     <td style="text-align:center; vertical-align:top"> y
  *     <td> The result will be left-justified.
  *
- * <tr><td> '#' <td align="center" valign="top"> y<sup>1</sup>
- *     <td align="center" valign="top"> -
- *     <td align="center" valign="top"> y<sup>3</sup>
- *     <td align="center" valign="top"> y
- *     <td align="center" valign="top"> -
+ * <tr><td> '#' <td style="text-align:center; vertical-align:top"> y<sup>1</sup>
+ *     <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> y<sup>3</sup>
+ *     <td style="text-align:center; vertical-align:top"> y
+ *     <td style="text-align:center; vertical-align:top"> -
  *     <td> The result should use a conversion-dependent alternate form
  *
- * <tr><td> '+' <td align="center" valign="top"> -
- *     <td align="center" valign="top"> -
- *     <td align="center" valign="top"> y<sup>4</sup>
- *     <td align="center" valign="top"> y
- *     <td align="center" valign="top"> -
+ * <tr><td> '+' <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> y<sup>4</sup>
+ *     <td style="text-align:center; vertical-align:top"> y
+ *     <td style="text-align:center; vertical-align:top"> -
  *     <td> The result will always include a sign
  *
- * <tr><td> '&nbsp;&nbsp;' <td align="center" valign="top"> -
- *     <td align="center" valign="top"> -
- *     <td align="center" valign="top"> y<sup>4</sup>
- *     <td align="center" valign="top"> y
- *     <td align="center" valign="top"> -
+ * <tr><td> '&nbsp;&nbsp;' <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> y<sup>4</sup>
+ *     <td style="text-align:center; vertical-align:top"> y
+ *     <td style="text-align:center; vertical-align:top"> -
  *     <td> The result will include a leading space for positive values
  *
- * <tr><td> '0' <td align="center" valign="top"> -
- *     <td align="center" valign="top"> -
- *     <td align="center" valign="top"> y
- *     <td align="center" valign="top"> y
- *     <td align="center" valign="top"> -
+ * <tr><td> '0' <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> y
+ *     <td style="text-align:center; vertical-align:top"> y
+ *     <td style="text-align:center; vertical-align:top"> -
  *     <td> The result will be zero-padded
  *
- * <tr><td> ',' <td align="center" valign="top"> -
- *     <td align="center" valign="top"> -
- *     <td align="center" valign="top"> y<sup>2</sup>
- *     <td align="center" valign="top"> y<sup>5</sup>
- *     <td align="center" valign="top"> -
+ * <tr><td> ',' <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> y<sup>2</sup>
+ *     <td style="text-align:center; vertical-align:top"> y<sup>5</sup>
+ *     <td style="text-align:center; vertical-align:top"> -
  *     <td> The result will include locale-specific {@linkplain
  *     java.text.DecimalFormatSymbols#getGroupingSeparator grouping separators}
  *
- * <tr><td> '(' <td align="center" valign="top"> -
- *     <td align="center" valign="top"> -
- *     <td align="center" valign="top"> y<sup>4</sup>
- *     <td align="center" valign="top"> y<sup>5</sup>
- *     <td align="center"> -
+ * <tr><td> '(' <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> -
+ *     <td style="text-align:center; vertical-align:top"> y<sup>4</sup>
+ *     <td style="text-align:center; vertical-align:top"> y<sup>5</sup>
+ *     <td style="text-align:center"> -
  *     <td> The result will enclose negative numbers in parentheses
  *
  * </table>
@@ -707,8 +707,8 @@
  *
  * <table cellpadding=5 summary="dgConv">
  *
- * <tr><td valign="top"> {@code 'b'}
- *     <td valign="top"> <code>'&#92;u0062'</code>
+ * <tr><td style="vertical-align:top"> {@code 'b'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0062'</code>
  *     <td> Produces either "{@code true}" or "{@code false}" as returned by
  *     {@link Boolean#toString(boolean)}.
  *
@@ -721,12 +721,12 @@
  *     <p> If the {@code '#'} flag is given, then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'B'}
- *     <td valign="top"> <code>'&#92;u0042'</code>
+ * <tr><td style="vertical-align:top"> {@code 'B'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0042'</code>
  *     <td> The upper-case variant of {@code 'b'}.
  *
- * <tr><td valign="top"> {@code 'h'}
- *     <td valign="top"> <code>'&#92;u0068'</code>
+ * <tr><td style="vertical-align:top"> {@code 'h'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0068'</code>
  *     <td> Produces a string representing the hash code value of the object.
  *
  *     <p> The result is obtained by invoking
@@ -735,12 +735,12 @@
  *     <p> If the {@code '#'} flag is given, then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'H'}
- *     <td valign="top"> <code>'&#92;u0048'</code>
+ * <tr><td style="vertical-align:top"> {@code 'H'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0048'</code>
  *     <td> The upper-case variant of {@code 'h'}.
  *
- * <tr><td valign="top"> {@code 's'}
- *     <td valign="top"> <code>'&#92;u0073'</code>
+ * <tr><td style="vertical-align:top"> {@code 's'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0073'</code>
  *     <td> Produces a string.
  *
  *     <p> If the argument implements {@link Formattable}, then
@@ -752,8 +752,8 @@
  *     Formattable} , then a {@link FormatFlagsConversionMismatchException}
  *     will be thrown.
  *
- * <tr><td valign="top"> {@code 'S'}
- *     <td valign="top"> <code>'&#92;u0053'</code>
+ * <tr><td style="vertical-align:top"> {@code 'S'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0053'</code>
  *     <td> The upper-case variant of {@code 's'}.
  *
  * </table>
@@ -762,16 +762,16 @@
  *
  * <table cellpadding=5 summary="dFlags">
  *
- * <tr><td valign="top"> {@code '-'}
- *     <td valign="top"> <code>'&#92;u002d'</code>
+ * <tr><td style="vertical-align:top"> {@code '-'}
+ *     <td style="vertical-align:top"> <code>'&#92;u002d'</code>
  *     <td> Left justifies the output.  Spaces (<code>'&#92;u0020'</code>) will be
  *     added at the end of the converted value as required to fill the minimum
  *     width of the field.  If the width is not provided, then a {@link
  *     MissingFormatWidthException} will be thrown.  If this flag is not given
  *     then the output will be right-justified.
  *
- * <tr><td valign="top"> {@code '#'}
- *     <td valign="top"> <code>'&#92;u0023'</code>
+ * <tr><td style="vertical-align:top"> {@code '#'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0023'</code>
  *     <td> Requires the output use an alternate form.  The definition of the
  *     form is specified by the conversion.
  *
@@ -803,8 +803,8 @@
  *
  * <table cellpadding=5 summary="charConv">
  *
- * <tr><td valign="top"> {@code 'c'}
- *     <td valign="top"> <code>'&#92;u0063'</code>
+ * <tr><td style="vertical-align:top"> {@code 'c'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0063'</code>
  *     <td> Formats the argument as a Unicode character as described in <a
  *     href="../lang/Character.html#unicode">Unicode Character
  *     Representation</a>.  This may be more than one 16-bit {@code char} in
@@ -813,8 +813,8 @@
  *     <p> If the {@code '#'} flag is given, then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'C'}
- *     <td valign="top"> <code>'&#92;u0043'</code>
+ * <tr><td style="vertical-align:top"> {@code 'C'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0043'</code>
  *     <td> The upper-case variant of {@code 'c'}.
  *
  * </table>
@@ -904,8 +904,8 @@
  *
  * <table cellpadding=5 summary="IntConv">
  *
- * <tr><td valign="top"> {@code 'd'}
- *     <td valign="top"> <code>'&#92;u0064'</code>
+ * <tr><td style="vertical-align:top"> {@code 'd'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0064'</code>
  *     <td> Formats the argument as a decimal integer. The <a
  *     href="#L10nAlgorithm">localization algorithm</a> is applied.
  *
@@ -915,8 +915,8 @@
  *     <p> If the {@code '#'} flag is given then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'o'}
- *     <td valign="top"> <code>'&#92;u006f'</code>
+ * <tr><td style="vertical-align:top"> {@code 'o'}
+ *     <td style="vertical-align:top"> <code>'&#92;u006f'</code>
  *     <td> Formats the argument as an integer in base eight.  No localization
  *     is applied.
  *
@@ -937,8 +937,8 @@
  *     are given then a {@link FormatFlagsConversionMismatchException} will be
  *     thrown.
  *
- * <tr><td valign="top"> {@code 'x'}
- *     <td valign="top"> <code>'&#92;u0078'</code>
+ * <tr><td style="vertical-align:top"> {@code 'x'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0078'</code>
  *     <td> Formats the argument as an integer in base sixteen. No
  *     localization is applied.
  *
@@ -960,8 +960,8 @@
  *     {@code ','} flags are given then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'X'}
- *     <td valign="top"> <code>'&#92;u0058'</code>
+ * <tr><td style="vertical-align:top"> {@code 'X'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0058'</code>
  *     <td> The upper-case variant of {@code 'x'}.  The entire string
  *     representing the number will be converted to {@linkplain
  *     String#toUpperCase upper case} including the {@code 'x'} (if any) and
@@ -984,8 +984,8 @@
  *
  * <table cellpadding=5 summary="intFlags">
  *
- * <tr><td valign="top"> {@code '+'}
- *     <td valign="top"> <code>'&#92;u002b'</code>
+ * <tr><td style="vertical-align:top"> {@code '+'}
+ *     <td style="vertical-align:top"> <code>'&#92;u002b'</code>
  *     <td> Requires the output to include a positive sign for all positive
  *     numbers.  If this flag is not given then only negative values will
  *     include a sign.
@@ -993,16 +993,16 @@
  *     <p> If both the {@code '+'} and <code>'&nbsp;&nbsp;'</code> flags are given
  *     then an {@link IllegalFormatFlagsException} will be thrown.
  *
- * <tr><td valign="top"> <code>'&nbsp;&nbsp;'</code>
- *     <td valign="top"> <code>'&#92;u0020'</code>
+ * <tr><td style="vertical-align:top"> <code>'&nbsp;&nbsp;'</code>
+ *     <td style="vertical-align:top"> <code>'&#92;u0020'</code>
  *     <td> Requires the output to include a single extra space
  *     (<code>'&#92;u0020'</code>) for non-negative values.
  *
  *     <p> If both the {@code '+'} and <code>'&nbsp;&nbsp;'</code> flags are given
  *     then an {@link IllegalFormatFlagsException} will be thrown.
  *
- * <tr><td valign="top"> {@code '0'}
- *     <td valign="top"> <code>'&#92;u0030'</code>
+ * <tr><td style="vertical-align:top"> {@code '0'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0030'</code>
  *     <td> Requires the output to be padded with leading {@linkplain
  *     java.text.DecimalFormatSymbols#getZeroDigit zeros} to the minimum field
  *     width following any sign or radix indicator except when converting NaN
@@ -1012,15 +1012,15 @@
  *     <p> If both the {@code '-'} and {@code '0'} flags are given then an
  *     {@link IllegalFormatFlagsException} will be thrown.
  *
- * <tr><td valign="top"> {@code ','}
- *     <td valign="top"> <code>'&#92;u002c'</code>
+ * <tr><td style="vertical-align:top"> {@code ','}
+ *     <td style="vertical-align:top"> <code>'&#92;u002c'</code>
  *     <td> Requires the output to include the locale-specific {@linkplain
  *     java.text.DecimalFormatSymbols#getGroupingSeparator group separators} as
  *     described in the <a href="#L10nGroup">"group" section</a> of the
  *     localization algorithm.
  *
- * <tr><td valign="top"> {@code '('}
- *     <td valign="top"> <code>'&#92;u0028'</code>
+ * <tr><td style="vertical-align:top"> {@code '('}
+ *     <td style="vertical-align:top"> <code>'&#92;u0028'</code>
  *     <td> Requires the output to prepend a {@code '('}
  *     (<code>'&#92;u0028'</code>) and append a {@code ')'}
  *     (<code>'&#92;u0029'</code>) to negative values.
@@ -1062,16 +1062,16 @@
  *
  * <table cellpadding=5 summary="BIntConv">
  *
- * <tr><td valign="top"> {@code 'd'}
- *     <td valign="top"> <code>'&#92;u0064'</code>
+ * <tr><td style="vertical-align:top"> {@code 'd'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0064'</code>
  *     <td> Requires the output to be formatted as a decimal integer. The <a
  *     href="#L10nAlgorithm">localization algorithm</a> is applied.
  *
  *     <p> If the {@code '#'} flag is given {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'o'}
- *     <td valign="top"> <code>'&#92;u006f'</code>
+ * <tr><td style="vertical-align:top"> {@code 'o'}
+ *     <td style="vertical-align:top"> <code>'&#92;u006f'</code>
  *     <td> Requires the output to be formatted as an integer in base eight.
  *     No localization is applied.
  *
@@ -1093,8 +1093,8 @@
  *     <p> If the {@code ','} flag is given then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'x'}
- *     <td valign="top"> <code>'&#92;u0078'</code>
+ * <tr><td style="vertical-align:top"> {@code 'x'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0078'</code>
  *     <td> Requires the output to be formatted as an integer in base
  *     sixteen.  No localization is applied.
  *
@@ -1117,8 +1117,8 @@
  *     <p> If the {@code ','} flag is given then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'X'}
- *     <td valign="top"> <code>'&#92;u0058'</code>
+ * <tr><td style="vertical-align:top"> {@code 'X'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0058'</code>
  *     <td> The upper-case variant of {@code 'x'}.  The entire string
  *     representing the number will be converted to {@linkplain
  *     String#toUpperCase upper case} including the {@code 'x'} (if any) and
@@ -1156,8 +1156,8 @@
  *
  * <table cellpadding=5 summary="floatConv">
  *
- * <tr><td valign="top"> {@code 'e'}
- *     <td valign="top"> <code>'&#92;u0065'</code>
+ * <tr><td style="vertical-align:top"> {@code 'e'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0065'</code>
  *     <td> Requires the output to be formatted using <a
  *     name="scientific">computerized scientific notation</a>.  The <a
  *     href="#L10nAlgorithm">localization algorithm</a> is applied.
@@ -1204,13 +1204,13 @@
  *     <p>If the {@code ','} flag is given, then an {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'E'}
- *     <td valign="top"> <code>'&#92;u0045'</code>
+ * <tr><td style="vertical-align:top"> {@code 'E'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0045'</code>
  *     <td> The upper-case variant of {@code 'e'}.  The exponent symbol
  *     will be {@code 'E'} (<code>'&#92;u0045'</code>).
  *
- * <tr><td valign="top"> {@code 'g'}
- *     <td valign="top"> <code>'&#92;u0067'</code>
+ * <tr><td style="vertical-align:top"> {@code 'g'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0067'</code>
  *     <td> Requires the output to be formatted in general scientific notation
  *     as described below. The <a href="#L10nAlgorithm">localization
  *     algorithm</a> is applied.
@@ -1234,12 +1234,12 @@
  *     <p> If the {@code '#'} flag is given then an {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'G'}
- *     <td valign="top"> <code>'&#92;u0047'</code>
+ * <tr><td style="vertical-align:top"> {@code 'G'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0047'</code>
  *     <td> The upper-case variant of {@code 'g'}.
  *
- * <tr><td valign="top"> {@code 'f'}
- *     <td valign="top"> <code>'&#92;u0066'</code>
+ * <tr><td style="vertical-align:top"> {@code 'f'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0066'</code>
  *     <td> Requires the output to be formatted using <a id="decimal">decimal
  *     format</a>.  The <a href="#L10nAlgorithm">localization algorithm</a> is
  *     applied.
@@ -1270,8 +1270,8 @@
  *     Float#toString(float)} or {@link Double#toString(double)} as
  *     appropriate.
  *
- * <tr><td valign="top"> {@code 'a'}
- *     <td valign="top"> <code>'&#92;u0061'</code>
+ * <tr><td style="vertical-align:top"> {@code 'a'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0061'</code>
  *     <td> Requires the output to be formatted in hexadecimal exponential
  *     form.  No localization is applied.
  *
@@ -1323,8 +1323,8 @@
  *     <p> If the {@code '('} or {@code ','} flags are given, then a {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'A'}
- *     <td valign="top"> <code>'&#92;u0041'</code>
+ * <tr><td style="vertical-align:top"> {@code 'A'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0041'</code>
  *     <td> The upper-case variant of {@code 'a'}.  The entire string
  *     representing the number will be converted to upper case including the
  *     {@code 'x'} (<code>'&#92;u0078'</code>) and {@code 'p'}
@@ -1390,8 +1390,8 @@
  *
  * <table cellpadding=5 summary="floatConv">
  *
- * <tr><td valign="top"> {@code 'e'}
- *     <td valign="top"> <code>'&#92;u0065'</code>
+ * <tr><td style="vertical-align:top"> {@code 'e'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0065'</code>
  *     <td> Requires the output to be formatted using <a
  *     name="bscientific">computerized scientific notation</a>.  The <a
  *     href="#L10nAlgorithm">localization algorithm</a> is applied.
@@ -1432,13 +1432,13 @@
  *     <p> If the {@code ','} flag is given, then an {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'E'}
- *     <td valign="top"> <code>'&#92;u0045'</code>
+ * <tr><td style="vertical-align:top"> {@code 'E'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0045'</code>
  *     <td> The upper-case variant of {@code 'e'}.  The exponent symbol
  *     will be {@code 'E'} (<code>'&#92;u0045'</code>).
  *
- * <tr><td valign="top"> {@code 'g'}
- *     <td valign="top"> <code>'&#92;u0067'</code>
+ * <tr><td style="vertical-align:top"> {@code 'g'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0067'</code>
  *     <td> Requires the output to be formatted in general scientific notation
  *     as described below. The <a href="#L10nAlgorithm">localization
  *     algorithm</a> is applied.
@@ -1462,12 +1462,12 @@
  *     <p> If the {@code '#'} flag is given then an {@link
  *     FormatFlagsConversionMismatchException} will be thrown.
  *
- * <tr><td valign="top"> {@code 'G'}
- *     <td valign="top"> <code>'&#92;u0047'</code>
+ * <tr><td style="vertical-align:top"> {@code 'G'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0047'</code>
  *     <td> The upper-case variant of {@code 'g'}.
  *
- * <tr><td valign="top"> {@code 'f'}
- *     <td valign="top"> <code>'&#92;u0066'</code>
+ * <tr><td style="vertical-align:top"> {@code 'f'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0066'</code>
  *     <td> Requires the output to be formatted using <a id="bdecimal">decimal
  *     format</a>.  The <a href="#L10nAlgorithm">localization algorithm</a> is
  *     applied.
@@ -1514,11 +1514,11 @@
  *
  * <table cellpadding=5 summary="DTConv">
  *
- * <tr><td valign="top"> {@code 't'}
- *     <td valign="top"> <code>'&#92;u0074'</code>
+ * <tr><td style="vertical-align:top"> {@code 't'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0074'</code>
  *     <td> Prefix for date and time conversion characters.
- * <tr><td valign="top"> {@code 'T'}
- *     <td valign="top"> <code>'&#92;u0054'</code>
+ * <tr><td style="vertical-align:top"> {@code 'T'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0054'</code>
  *     <td> The upper-case variant of {@code 't'}.
  *
  * </table>
@@ -1534,53 +1534,53 @@
  *
  * <table cellpadding=5 summary="time">
  *
- * <tr><td valign="top"> {@code 'H'}
- *     <td valign="top"> <code>'&#92;u0048'</code>
+ * <tr><td style="vertical-align:top"> {@code 'H'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0048'</code>
  *     <td> Hour of the day for the 24-hour clock, formatted as two digits with
  *     a leading zero as necessary i.e. {@code 00 - 23}. {@code 00}
  *     corresponds to midnight.
  *
- * <tr><td valign="top">{@code 'I'}
- *     <td valign="top"> <code>'&#92;u0049'</code>
+ * <tr><td style="vertical-align:top">{@code 'I'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0049'</code>
  *     <td> Hour for the 12-hour clock, formatted as two digits with a leading
  *     zero as necessary, i.e.  {@code 01 - 12}.  {@code 01} corresponds to
  *     one o'clock (either morning or afternoon).
  *
- * <tr><td valign="top">{@code 'k'}
- *     <td valign="top"> <code>'&#92;u006b'</code>
+ * <tr><td style="vertical-align:top">{@code 'k'}
+ *     <td style="vertical-align:top"> <code>'&#92;u006b'</code>
  *     <td> Hour of the day for the 24-hour clock, i.e. {@code 0 - 23}.
  *     {@code 0} corresponds to midnight.
  *
- * <tr><td valign="top">{@code 'l'}
- *     <td valign="top"> <code>'&#92;u006c'</code>
+ * <tr><td style="vertical-align:top">{@code 'l'}
+ *     <td style="vertical-align:top"> <code>'&#92;u006c'</code>
  *     <td> Hour for the 12-hour clock, i.e. {@code 1 - 12}.  {@code 1}
  *     corresponds to one o'clock (either morning or afternoon).
  *
- * <tr><td valign="top">{@code 'M'}
- *     <td valign="top"> <code>'&#92;u004d'</code>
+ * <tr><td style="vertical-align:top">{@code 'M'}
+ *     <td style="vertical-align:top"> <code>'&#92;u004d'</code>
  *     <td> Minute within the hour formatted as two digits with a leading zero
  *     as necessary, i.e.  {@code 00 - 59}.
  *
- * <tr><td valign="top">{@code 'S'}
- *     <td valign="top"> <code>'&#92;u0053'</code>
+ * <tr><td style="vertical-align:top">{@code 'S'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0053'</code>
  *     <td> Seconds within the minute, formatted as two digits with a leading
  *     zero as necessary, i.e. {@code 00 - 60} ("{@code 60}" is a special
  *     value required to support leap seconds).
  *
- * <tr><td valign="top">{@code 'L'}
- *     <td valign="top"> <code>'&#92;u004c'</code>
+ * <tr><td style="vertical-align:top">{@code 'L'}
+ *     <td style="vertical-align:top"> <code>'&#92;u004c'</code>
  *     <td> Millisecond within the second formatted as three digits with
  *     leading zeros as necessary, i.e. {@code 000 - 999}.
  *
- * <tr><td valign="top">{@code 'N'}
- *     <td valign="top"> <code>'&#92;u004e'</code>
+ * <tr><td style="vertical-align:top">{@code 'N'}
+ *     <td style="vertical-align:top"> <code>'&#92;u004e'</code>
  *     <td> Nanosecond within the second, formatted as nine digits with leading
  *     zeros as necessary, i.e. {@code 000000000 - 999999999}.  The precision
  *     of this value is limited by the resolution of the underlying operating
  *     system or hardware.
  *
- * <tr><td valign="top">{@code 'p'}
- *     <td valign="top"> <code>'&#92;u0070'</code>
+ * <tr><td style="vertical-align:top">{@code 'p'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0070'</code>
  *     <td> Locale-specific {@linkplain
  *     java.text.DateFormatSymbols#getAmPmStrings morning or afternoon} marker
  *     in lower case, e.g."{@code am}" or "{@code pm}".  Use of the
@@ -1589,8 +1589,8 @@
  *     GNU {@code date} and POSIX {@code strftime(3c)} which produce
  *     upper-case output.)
  *
- * <tr><td valign="top">{@code 'z'}
- *     <td valign="top"> <code>'&#92;u007a'</code>
+ * <tr><td style="vertical-align:top">{@code 'z'}
+ *     <td style="vertical-align:top"> <code>'&#92;u007a'</code>
  *     <td> <a href="http://www.ietf.org/rfc/rfc0822.txt">RFC&nbsp;822</a>
  *     style numeric time zone offset from GMT, e.g. {@code -0800}.  This
  *     value will be adjusted as necessary for Daylight Saving Time.  For
@@ -1598,8 +1598,8 @@
  *     the {@linkplain TimeZone#getDefault() default time zone} for this
  *     instance of the Java virtual machine.
  *
- * <tr><td valign="top">{@code 'Z'}
- *     <td valign="top"> <code>'&#92;u005a'</code>
+ * <tr><td style="vertical-align:top">{@code 'Z'}
+ *     <td style="vertical-align:top"> <code>'&#92;u005a'</code>
  *     <td> A string representing the abbreviation for the time zone.  This
  *     value will be adjusted as necessary for Daylight Saving Time.  For
  *     {@code long}, {@link Long}, and {@link Date} the time zone used is
@@ -1607,14 +1607,14 @@
  *     instance of the Java virtual machine.  The Formatter's locale will
  *     supersede the locale of the argument (if any).
  *
- * <tr><td valign="top">{@code 's'}
- *     <td valign="top"> <code>'&#92;u0073'</code>
+ * <tr><td style="vertical-align:top">{@code 's'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0073'</code>
  *     <td> Seconds since the beginning of the epoch starting at 1 January 1970
  *     {@code 00:00:00} UTC, i.e. {@code Long.MIN_VALUE/1000} to
  *     {@code Long.MAX_VALUE/1000}.
  *
- * <tr><td valign="top">{@code 'Q'}
- *     <td valign="top"> <code>'&#92;u004f'</code>
+ * <tr><td style="vertical-align:top">{@code 'Q'}
+ *     <td style="vertical-align:top"> <code>'&#92;u004f'</code>
  *     <td> Milliseconds since the beginning of the epoch starting at 1 January
  *     1970 {@code 00:00:00} UTC, i.e. {@code Long.MIN_VALUE} to
  *     {@code Long.MAX_VALUE}. The precision of this value is limited by
@@ -1626,69 +1626,69 @@
  *
  * <table cellpadding=5 summary="date">
  *
- * <tr><td valign="top">{@code 'B'}
- *     <td valign="top"> <code>'&#92;u0042'</code>
+ * <tr><td style="vertical-align:top">{@code 'B'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0042'</code>
  *     <td> Locale-specific {@linkplain java.text.DateFormatSymbols#getMonths
  *     full month name}, e.g. {@code "January"}, {@code "February"}.
  *
- * <tr><td valign="top">{@code 'b'}
- *     <td valign="top"> <code>'&#92;u0062'</code>
+ * <tr><td style="vertical-align:top">{@code 'b'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0062'</code>
  *     <td> Locale-specific {@linkplain
  *     java.text.DateFormatSymbols#getShortMonths abbreviated month name},
  *     e.g. {@code "Jan"}, {@code "Feb"}.
  *
- * <tr><td valign="top">{@code 'h'}
- *     <td valign="top"> <code>'&#92;u0068'</code>
+ * <tr><td style="vertical-align:top">{@code 'h'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0068'</code>
  *     <td> Same as {@code 'b'}.
  *
- * <tr><td valign="top">{@code 'A'}
- *     <td valign="top"> <code>'&#92;u0041'</code>
+ * <tr><td style="vertical-align:top">{@code 'A'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0041'</code>
  *     <td> Locale-specific full name of the {@linkplain
  *     java.text.DateFormatSymbols#getWeekdays day of the week},
  *     e.g. {@code "Sunday"}, {@code "Monday"}
  *
- * <tr><td valign="top">{@code 'a'}
- *     <td valign="top"> <code>'&#92;u0061'</code>
+ * <tr><td style="vertical-align:top">{@code 'a'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0061'</code>
  *     <td> Locale-specific short name of the {@linkplain
  *     java.text.DateFormatSymbols#getShortWeekdays day of the week},
  *     e.g. {@code "Sun"}, {@code "Mon"}
  *
- * <tr><td valign="top">{@code 'C'}
- *     <td valign="top"> <code>'&#92;u0043'</code>
+ * <tr><td style="vertical-align:top">{@code 'C'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0043'</code>
  *     <td> Four-digit year divided by {@code 100}, formatted as two digits
  *     with leading zero as necessary, i.e. {@code 00 - 99}
  *
- * <tr><td valign="top">{@code 'Y'}
- *     <td valign="top"> <code>'&#92;u0059'</code> <td> Year, formatted to at least
+ * <tr><td style="vertical-align:top">{@code 'Y'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0059'</code> <td> Year, formatted to at least
  *     four digits with leading zeros as necessary, e.g. {@code 0092} equals
  *     {@code 92} CE for the Gregorian calendar.
  *
- * <tr><td valign="top">{@code 'y'}
- *     <td valign="top"> <code>'&#92;u0079'</code>
+ * <tr><td style="vertical-align:top">{@code 'y'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0079'</code>
  *     <td> Last two digits of the year, formatted with leading zeros as
  *     necessary, i.e. {@code 00 - 99}.
  *
- * <tr><td valign="top">{@code 'j'}
- *     <td valign="top"> <code>'&#92;u006a'</code>
+ * <tr><td style="vertical-align:top">{@code 'j'}
+ *     <td style="vertical-align:top"> <code>'&#92;u006a'</code>
  *     <td> Day of year, formatted as three digits with leading zeros as
  *     necessary, e.g. {@code 001 - 366} for the Gregorian calendar.
  *     {@code 001} corresponds to the first day of the year.
  *
- * <tr><td valign="top">{@code 'm'}
- *     <td valign="top"> <code>'&#92;u006d'</code>
+ * <tr><td style="vertical-align:top">{@code 'm'}
+ *     <td style="vertical-align:top"> <code>'&#92;u006d'</code>
  *     <td> Month, formatted as two digits with leading zeros as necessary,
  *     i.e. {@code 01 - 13}, where "{@code 01}" is the first month of the
  *     year and ("{@code 13}" is a special value required to support lunar
  *     calendars).
  *
- * <tr><td valign="top">{@code 'd'}
- *     <td valign="top"> <code>'&#92;u0064'</code>
+ * <tr><td style="vertical-align:top">{@code 'd'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0064'</code>
  *     <td> Day of month, formatted as two digits with leading zeros as
  *     necessary, i.e. {@code 01 - 31}, where "{@code 01}" is the first day
  *     of the month.
  *
- * <tr><td valign="top">{@code 'e'}
- *     <td valign="top"> <code>'&#92;u0065'</code>
+ * <tr><td style="vertical-align:top">{@code 'e'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0065'</code>
  *     <td> Day of month, formatted as two digits, i.e. {@code 1 - 31} where
  *     "{@code 1}" is the first day of the month.
  *
@@ -1699,31 +1699,31 @@
  *
  * <table cellpadding=5 summary="composites">
  *
- * <tr><td valign="top">{@code 'R'}
- *     <td valign="top"> <code>'&#92;u0052'</code>
+ * <tr><td style="vertical-align:top">{@code 'R'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0052'</code>
  *     <td> Time formatted for the 24-hour clock as {@code "%tH:%tM"}
  *
- * <tr><td valign="top">{@code 'T'}
- *     <td valign="top"> <code>'&#92;u0054'</code>
+ * <tr><td style="vertical-align:top">{@code 'T'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0054'</code>
  *     <td> Time formatted for the 24-hour clock as {@code "%tH:%tM:%tS"}.
  *
- * <tr><td valign="top">{@code 'r'}
- *     <td valign="top"> <code>'&#92;u0072'</code>
+ * <tr><td style="vertical-align:top">{@code 'r'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0072'</code>
  *     <td> Time formatted for the 12-hour clock as {@code "%tI:%tM:%tS
  *     %Tp"}.  The location of the morning or afternoon marker
  *     ({@code '%Tp'}) may be locale-dependent.
  *
- * <tr><td valign="top">{@code 'D'}
- *     <td valign="top"> <code>'&#92;u0044'</code>
+ * <tr><td style="vertical-align:top">{@code 'D'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0044'</code>
  *     <td> Date formatted as {@code "%tm/%td/%ty"}.
  *
- * <tr><td valign="top">{@code 'F'}
- *     <td valign="top"> <code>'&#92;u0046'</code>
+ * <tr><td style="vertical-align:top">{@code 'F'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0046'</code>
  *     <td> <a href="http://www.w3.org/TR/NOTE-datetime">ISO&nbsp;8601</a>
  *     complete date formatted as {@code "%tY-%tm-%td"}.
  *
- * <tr><td valign="top">{@code 'c'}
- *     <td valign="top"> <code>'&#92;u0063'</code>
+ * <tr><td style="vertical-align:top">{@code 'c'}
+ *     <td style="vertical-align:top"> <code>'&#92;u0063'</code>
  *     <td> Date and time formatted as {@code "%ta %tb %td %tT %tZ %tY"},
  *     e.g. {@code "Sun Jul 20 16:17:00 EDT 1969"}.
  *
@@ -1750,7 +1750,7 @@
  *
  * <table cellpadding=5 summary="DTConv">
  *
- * <tr><td valign="top">{@code '%'}
+ * <tr><td style="vertical-align:top">{@code '%'}
  *     <td> The result is a literal {@code '%'} (<code>'&#92;u0025'</code>)
  *
  * <p> The width is the minimum number of characters to
@@ -1775,7 +1775,7 @@
  *
  * <table cellpadding=5 summary="DTConv">
  *
- * <tr><td valign="top">{@code 'n'}
+ * <tr><td style="vertical-align:top">{@code 'n'}
  *     <td> the platform-specific line separator as returned by {@link
  *     System#lineSeparator()}.
  *
--- a/jdk/src/java.base/share/classes/java/util/Locale.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/util/Locale.java	Wed Apr 26 16:05:55 2017 -0700
@@ -1588,7 +1588,7 @@
      * <p>Grandfathered tags with canonical replacements are as follows:
      *
      * <table summary="Grandfathered tags with canonical replacements">
-     * <tbody align="center">
+     * <tbody style="text-align:center">
      * <tr><th>grandfathered tag</th><th>&nbsp;</th><th>modern replacement</th></tr>
      * <tr><td>art-lojban</td><td>&nbsp;</td><td>jbo</td></tr>
      * <tr><td>i-ami</td><td>&nbsp;</td><td>ami</td></tr>
@@ -1617,7 +1617,7 @@
      * converted as follows:
      *
      * <table summary="Grandfathered tags with no modern replacement">
-     * <tbody align="center">
+     * <tbody style="text-align:center">
      * <tr><th>grandfathered tag</th><th>&nbsp;</th><th>converts to</th></tr>
      * <tr><td>cel-gaulish</td><td>&nbsp;</td><td>xtg-x-cel-gaulish</td></tr>
      * <tr><td>en-GB-oed</td><td>&nbsp;</td><td>en-GB-x-oed</td></tr>
@@ -2774,60 +2774,60 @@
      * <th>Language Priority List: {@code "de-*-DE"}</th>
      * </tr>
      * <tr>
-     * <td valign=top>
+     * <td style="vertical-align:top">
      * {@link FilteringMode#AUTOSELECT_FILTERING AUTOSELECT_FILTERING}
      * </td>
-     * <td valign=top>
+     * <td style="vertical-align:top">
      * Performs <em>basic</em> filtering and returns {@code "de-DE"} and
      * {@code "de-DE-1996"}.
      * </td>
-     * <td valign=top>
+     * <td style="vertical-align:top">
      * Performs <em>extended</em> filtering and returns {@code "de-DE"},
      * {@code "de-Deva-DE"}, {@code "de-DE-1996"}, {@code "de-Latn-DE"}, and
      * {@code "de-Latn-DE-1996"}.
      * </td>
      * </tr>
      * <tr>
-     * <td valign=top>
+     * <td style="vertical-align:top">
      * {@link FilteringMode#EXTENDED_FILTERING EXTENDED_FILTERING}
      * </td>
-     * <td valign=top>
+     * <td style="vertical-align:top">
      * Performs <em>extended</em> filtering and returns {@code "de-DE"},
      * {@code "de-Deva-DE"}, {@code "de-DE-1996"}, {@code "de-Latn-DE"}, and
      * {@code "de-Latn-DE-1996"}.
      * </td>
-     * <td valign=top>Same as above.</td>
+     * <td style="vertical-align:top">Same as above.</td>
      * </tr>
      * <tr>
-     * <td valign=top>
+     * <td style="vertical-align:top">
      * {@link FilteringMode#IGNORE_EXTENDED_RANGES IGNORE_EXTENDED_RANGES}
      * </td>
-     * <td valign=top>
+     * <td style="vertical-align:top">
      * Performs <em>basic</em> filtering and returns {@code "de-DE"} and
      * {@code "de-DE-1996"}.
      * </td>
-     * <td valign=top>
+     * <td style="vertical-align:top">
      * Performs <em>basic</em> filtering and returns {@code null} because
      * nothing matches.
      * </td>
      * </tr>
      * <tr>
-     * <td valign=top>
+     * <td style="vertical-align:top">
      * {@link FilteringMode#MAP_EXTENDED_RANGES MAP_EXTENDED_RANGES}
      * </td>
-     * <td valign=top>Same as above.</td>
-     * <td valign=top>
+     * <td style="vertical-align:top">Same as above.</td>
+     * <td style="vertical-align:top">
      * Performs <em>basic</em> filtering and returns {@code "de-DE"} and
      * {@code "de-DE-1996"} because {@code "de-*-DE"} is mapped to
      * {@code "de-DE"}.
      * </td>
      * </tr>
      * <tr>
-     * <td valign=top>
+     * <td style="vertical-align:top">
      * {@link FilteringMode#REJECT_EXTENDED_RANGES REJECT_EXTENDED_RANGES}
      * </td>
-     * <td valign=top>Same as above.</td>
-     * <td valign=top>
+     * <td style="vertical-align:top">Same as above.</td>
+     * <td style="vertical-align:top">
      * Throws {@link IllegalArgumentException} because {@code "de-*-DE"} is
      * not a valid basic language range.
      * </td>
--- a/jdk/src/java.base/share/classes/java/util/Queue.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/util/Queue.java	Wed Apr 26 16:05:55 2017 -0700
@@ -51,8 +51,8 @@
  * <caption>Summary of Queue methods</caption>
  *  <tr>
  *    <td></td>
- *    <td ALIGN=CENTER><em>Throws exception</em></td>
- *    <td ALIGN=CENTER><em>Returns special value</em></td>
+ *    <td style="text-align:center"><em>Throws exception</em></td>
+ *    <td style="text-align:center"><em>Returns special value</em></td>
  *  </tr>
  *  <tr>
  *    <td><b>Insert</b></td>
--- a/jdk/src/java.base/share/classes/java/util/concurrent/BlockingDeque.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/util/concurrent/BlockingDeque.java	Wed Apr 26 16:05:55 2017 -0700
@@ -56,14 +56,14 @@
  * <table BORDER CELLPADDING=3 CELLSPACING=1>
  * <caption>Summary of BlockingDeque methods</caption>
  *  <tr>
- *    <td ALIGN=CENTER COLSPAN = 5> <b>First Element (Head)</b></td>
+ *    <td style="text-align:center" COLSPAN = 5> <b>First Element (Head)</b></td>
  *  </tr>
  *  <tr>
  *    <td></td>
- *    <td ALIGN=CENTER><em>Throws exception</em></td>
- *    <td ALIGN=CENTER><em>Special value</em></td>
- *    <td ALIGN=CENTER><em>Blocks</em></td>
- *    <td ALIGN=CENTER><em>Times out</em></td>
+ *    <td style="text-align:center"><em>Throws exception</em></td>
+ *    <td style="text-align:center"><em>Special value</em></td>
+ *    <td style="text-align:center"><em>Blocks</em></td>
+ *    <td style="text-align:center"><em>Times out</em></td>
  *  </tr>
  *  <tr>
  *    <td><b>Insert</b></td>
@@ -87,14 +87,14 @@
  *    <td><em>not applicable</em></td>
  *  </tr>
  *  <tr>
- *    <td ALIGN=CENTER COLSPAN = 5> <b>Last Element (Tail)</b></td>
+ *    <td style="text-align:center" COLSPAN = 5> <b>Last Element (Tail)</b></td>
  *  </tr>
  *  <tr>
  *    <td></td>
- *    <td ALIGN=CENTER><em>Throws exception</em></td>
- *    <td ALIGN=CENTER><em>Special value</em></td>
- *    <td ALIGN=CENTER><em>Blocks</em></td>
- *    <td ALIGN=CENTER><em>Times out</em></td>
+ *    <td style="text-align:center"><em>Throws exception</em></td>
+ *    <td style="text-align:center"><em>Special value</em></td>
+ *    <td style="text-align:center"><em>Blocks</em></td>
+ *    <td style="text-align:center"><em>Times out</em></td>
  *  </tr>
  *  <tr>
  *    <td><b>Insert</b></td>
@@ -131,11 +131,11 @@
  * <table BORDER CELLPADDING=3 CELLSPACING=1>
  * <caption>Comparison of BlockingQueue and BlockingDeque methods</caption>
  *  <tr>
- *    <td ALIGN=CENTER> <b>{@code BlockingQueue} Method</b></td>
- *    <td ALIGN=CENTER> <b>Equivalent {@code BlockingDeque} Method</b></td>
+ *    <td style="text-align:center"> <b>{@code BlockingQueue} Method</b></td>
+ *    <td style="text-align:center"> <b>Equivalent {@code BlockingDeque} Method</b></td>
  *  </tr>
  *  <tr>
- *    <td ALIGN=CENTER COLSPAN = 2> <b>Insert</b></td>
+ *    <td style="text-align:center" COLSPAN = 2> <b>Insert</b></td>
  *  </tr>
  *  <tr>
  *    <td>{@link #add(Object) add(e)}</td>
@@ -154,7 +154,7 @@
  *    <td>{@link #offerLast(Object, long, TimeUnit) offerLast(e, time, unit)}</td>
  *  </tr>
  *  <tr>
- *    <td ALIGN=CENTER COLSPAN = 2> <b>Remove</b></td>
+ *    <td style="text-align:center" COLSPAN = 2> <b>Remove</b></td>
  *  </tr>
  *  <tr>
  *    <td>{@link #remove() remove()}</td>
@@ -173,7 +173,7 @@
  *    <td>{@link #pollFirst(long, TimeUnit) pollFirst(time, unit)}</td>
  *  </tr>
  *  <tr>
- *    <td ALIGN=CENTER COLSPAN = 2> <b>Examine</b></td>
+ *    <td style="text-align:center" COLSPAN = 2> <b>Examine</b></td>
  *  </tr>
  *  <tr>
  *    <td>{@link #element() element()}</td>
--- a/jdk/src/java.base/share/classes/java/util/concurrent/BlockingQueue.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/util/concurrent/BlockingQueue.java	Wed Apr 26 16:05:55 2017 -0700
@@ -57,10 +57,10 @@
  * <caption>Summary of BlockingQueue methods</caption>
  *  <tr>
  *    <td></td>
- *    <td ALIGN=CENTER><em>Throws exception</em></td>
- *    <td ALIGN=CENTER><em>Special value</em></td>
- *    <td ALIGN=CENTER><em>Blocks</em></td>
- *    <td ALIGN=CENTER><em>Times out</em></td>
+ *    <td style="text-align:center"><em>Throws exception</em></td>
+ *    <td style="text-align:center"><em>Special value</em></td>
+ *    <td style="text-align:center"><em>Blocks</em></td>
+ *    <td style="text-align:center"><em>Times out</em></td>
  *  </tr>
  *  <tr>
  *    <td><b>Insert</b></td>
--- a/jdk/src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java	Wed Apr 26 16:05:55 2017 -0700
@@ -113,8 +113,8 @@
  * <caption>Summary of task execution methods</caption>
  *  <tr>
  *    <td></td>
- *    <td ALIGN=CENTER> <b>Call from non-fork/join clients</b></td>
- *    <td ALIGN=CENTER> <b>Call from within fork/join computations</b></td>
+ *    <td style="text-align:center"> <b>Call from non-fork/join clients</b></td>
+ *    <td style="text-align:center"> <b>Call from within fork/join computations</b></td>
  *  </tr>
  *  <tr>
  *    <td> <b>Arrange async execution</b></td>
--- a/jdk/src/java.base/share/classes/java/util/regex/Pattern.java	Wed Apr 26 14:03:02 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/util/regex/Pattern.java	Wed Apr 26 16:05:55 2017 -0700
@@ -82,305 +82,305 @@
  * <table border="0" cellpadding="1" cellspacing="0"
  *  summary="Regular expression constructs, and what they match">
  *
- * <tr align="left">
- * <th align="left" id="construct">Construct</th>
- * <th align="left" id="matches">Matches</th>
+ * <tr style="text-align:left">
+ * <th style="text-align:left" id="construct">Construct</th>
+ * <th style="text-align:left" id="matches">Matches</th>
  * </tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="characters">Characters</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="characters">Characters</th></tr>
  *
- * <tr><td valign="top" headers="construct characters"><i>x</i></td>
+ * <tr><td style="vertical-align:top" headers="construct characters"><i>x</i></td>
  *     <td headers="matches">The character <i>x</i></td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \\}</td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \\}</td>
  *     <td headers="matches">The backslash character</td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \0}<i>n</i></td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \0}<i>n</i></td>
  *     <td headers="matches">The character with octal value {@code 0}<i>n</i>
  *         (0&nbsp;{@code <=}&nbsp;<i>n</i>&nbsp;{@code <=}&nbsp;7)</td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \0}<i>nn</i></td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \0}<i>nn</i></td>
  *     <td headers="matches">The character with octal value {@code 0}<i>nn</i>
  *         (0&nbsp;{@code <=}&nbsp;<i>n</i>&nbsp;{@code <=}&nbsp;7)</td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \0}<i>mnn</i></td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \0}<i>mnn</i></td>
  *     <td headers="matches">The character with octal value {@code 0}<i>mnn</i>
  *         (0&nbsp;{@code <=}&nbsp;<i>m</i>&nbsp;{@code <=}&nbsp;3,
  *         0&nbsp;{@code <=}&nbsp;<i>n</i>&nbsp;{@code <=}&nbsp;7)</td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \x}<i>hh</i></td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \x}<i>hh</i></td>
  *     <td headers="matches">The character with hexadecimal&nbsp;value&nbsp;{@code 0x}<i>hh</i></td></tr>
- * <tr><td valign="top" headers="construct characters"><code>&#92;u</code><i>hhhh</i></td>
+ * <tr><td style="vertical-align:top" headers="construct characters"><code>&#92;u</code><i>hhhh</i></td>
  *     <td headers="matches">The character with hexadecimal&nbsp;value&nbsp;{@code 0x}<i>hhhh</i></td></tr>
- * <tr><td valign="top" headers="construct characters"><code>&#92;x</code><i>{h...h}</i></td>
+ * <tr><td style="vertical-align:top" headers="construct characters"><code>&#92;x</code><i>{h...h}</i></td>
  *     <td headers="matches">The character with hexadecimal&nbsp;value&nbsp;{@code 0x}<i>h...h</i>
  *         ({@link java.lang.Character#MIN_CODE_POINT Character.MIN_CODE_POINT}
  *         &nbsp;&lt;=&nbsp;{@code 0x}<i>h...h</i>&nbsp;&lt;=&nbsp;
  *          {@link java.lang.Character#MAX_CODE_POINT Character.MAX_CODE_POINT})</td></tr>
- * <tr><td valign="top" headers="construct characters"><code>&#92;N{</code><i>name</i><code>}</code></td>
+ * <tr><td style="vertical-align:top" headers="construct characters"><code>&#92;N{</code><i>name</i><code>}</code></td>
  *     <td headers="matches">The character with Unicode character name <i>'name'</i></td></tr>
- * <tr><td valign="top" headers="matches">{@code \t}</td>
+ * <tr><td style="vertical-align:top" headers="matches">{@code \t}</td>
  *     <td headers="matches">The tab character (<code>'&#92;u0009'</code>)</td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \n}</td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \n}</td>
  *     <td headers="matches">The newline (line feed) character (<code>'&#92;u000A'</code>)</td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \r}</td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \r}</td>
  *     <td headers="matches">The carriage-return character (<code>'&#92;u000D'</code>)</td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \f}</td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \f}</td>
  *     <td headers="matches">The form-feed character (<code>'&#92;u000C'</code>)</td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \a}</td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \a}</td>
  *     <td headers="matches">The alert (bell) character (<code>'&#92;u0007'</code>)</td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \e}</td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \e}</td>
  *     <td headers="matches">The escape character (<code>'&#92;u001B'</code>)</td></tr>
- * <tr><td valign="top" headers="construct characters">{@code \c}<i>x</i></td>
+ * <tr><td style="vertical-align:top" headers="construct characters">{@code \c}<i>x</i></td>
  *     <td headers="matches">The control character corresponding to <i>x</i></td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="classes">Character classes</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="classes">Character classes</th></tr>
  *
- * <tr><td valign="top" headers="construct classes">{@code [abc]}</td>
+ * <tr><td style="vertical-align:top" headers="construct classes">{@code [abc]}</td>
  *     <td headers="matches">{@code a}, {@code b}, or {@code c} (simple class)</td></tr>
- * <tr><td valign="top" headers="construct classes">{@code [^abc]}</td>
+ * <tr><td style="vertical-align:top" headers="construct classes">{@code [^abc]}</td>
  *     <td headers="matches">Any character except {@code a}, {@code b}, or {@code c} (negation)</td></tr>
- * <tr><td valign="top" headers="construct classes">{@code [a-zA-Z]}</td>
+ * <tr><td style="vertical-align:top" headers="construct classes">{@code [a-zA-Z]}</td>
  *     <td headers="matches">{@code a} through {@code z}
  *         or {@code A} through {@code Z}, inclusive (range)</td></tr>
- * <tr><td valign="top" headers="construct classes">{@code [a-d[m-p]]}</td>
+ * <tr><td style="vertical-align:top" headers="construct classes">{@code [a-d[m-p]]}</td>
  *     <td headers="matches">{@code a} through {@code d},
  *      or {@code m} through {@code p}: {@code [a-dm-p]} (union)</td></tr>
- * <tr><td valign="top" headers="construct classes">{@code [a-z&&[def]]}</td>
+ * <tr><td style="vertical-align:top" headers="construct classes">{@code [a-z&&[def]]}</td>
  *     <td headers="matches">{@code d}, {@code e}, or {@code f} (intersection)</tr>
- * <tr><td valign="top" headers="construct classes">{@code [a-z&&[^bc]]}</td>
+ * <tr><td style="vertical-align:top" headers="construct classes">{@code [a-z&&[^bc]]}</td>
  *     <td headers="matches">{@code a} through {@code z},
  *         except for {@code b} and {@code c}: {@code [ad-z]} (subtraction)</td></tr>
- * <tr><td valign="top" headers="construct classes">{@code [a-z&&[^m-p]]}</td>
+ * <tr><td style="vertical-align:top" headers="construct classes">{@code [a-z&&[^m-p]]}</td>
  *     <td headers="matches">{@code a} through {@code z},
  *          and not {@code m} through {@code p}: {@code [a-lq-z]}(subtraction)</td></tr>
  * <tr><th>&nbsp;</th></tr>
  *
- * <tr align="left"><th colspan="2" id="predef">Predefined character classes</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="predef">Predefined character classes</th></tr>
  *
- * <tr><td valign="top" headers="construct predef">{@code .}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code .}</td>
  *     <td headers="matches">Any character (may or may not match <a href="#lt">line terminators</a>)</td></tr>
- * <tr><td valign="top" headers="construct predef">{@code \d}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code \d}</td>
  *     <td headers="matches">A digit: {@code [0-9]}</td></tr>
- * <tr><td valign="top" headers="construct predef">{@code \D}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code \D}</td>
  *     <td headers="matches">A non-digit: {@code [^0-9]}</td></tr>
- * <tr><td valign="top" headers="construct predef">{@code \h}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code \h}</td>
  *     <td headers="matches">A horizontal whitespace character:
  *     <code>[ \t\xA0&#92;u1680&#92;u180e&#92;u2000-&#92;u200a&#92;u202f&#92;u205f&#92;u3000]</code></td></tr>
- * <tr><td valign="top" headers="construct predef">{@code \H}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code \H}</td>
  *     <td headers="matches">A non-horizontal whitespace character: {@code [^\h]}</td></tr>
- * <tr><td valign="top" headers="construct predef">{@code \s}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code \s}</td>
  *     <td headers="matches">A whitespace character: {@code [ \t\n\x0B\f\r]}</td></tr>
- * <tr><td valign="top" headers="construct predef">{@code \S}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code \S}</td>
  *     <td headers="matches">A non-whitespace character: {@code [^\s]}</td></tr>
- * <tr><td valign="top" headers="construct predef">{@code \v}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code \v}</td>
  *     <td headers="matches">A vertical whitespace character: <code>[\n\x0B\f\r\x85&#92;u2028&#92;u2029]</code>
  *     </td></tr>
- * <tr><td valign="top" headers="construct predef">{@code \V}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code \V}</td>
  *     <td headers="matches">A non-vertical whitespace character: {@code [^\v]}</td></tr>
- * <tr><td valign="top" headers="construct predef">{@code \w}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code \w}</td>
  *     <td headers="matches">A word character: {@code [a-zA-Z_0-9]}</td></tr>
- * <tr><td valign="top" headers="construct predef">{@code \W}</td>
+ * <tr><td style="vertical-align:top" headers="construct predef">{@code \W}</td>
  *     <td headers="matches">A non-word character: {@code [^\w]}</td></tr>
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="posix"><b>POSIX character classes (US-ASCII only)</b></th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="posix"><b>POSIX character classes (US-ASCII only)</b></th></tr>
  *
- * <tr><td valign="top" headers="construct posix">{@code \p{Lower}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Lower}}</td>
  *     <td headers="matches">A lower-case alphabetic character: {@code [a-z]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{Upper}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Upper}}</td>
  *     <td headers="matches">An upper-case alphabetic character:{@code [A-Z]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{ASCII}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{ASCII}}</td>
  *     <td headers="matches">All ASCII:{@code [\x00-\x7F]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{Alpha}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Alpha}}</td>
  *     <td headers="matches">An alphabetic character:{@code [\p{Lower}\p{Upper}]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{Digit}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Digit}}</td>
  *     <td headers="matches">A decimal digit: {@code [0-9]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{Alnum}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Alnum}}</td>
  *     <td headers="matches">An alphanumeric character:{@code [\p{Alpha}\p{Digit}]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{Punct}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Punct}}</td>
  *     <td headers="matches">Punctuation: One of {@code !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~}</td></tr>
  *     <!-- {@code [\!"#\$%&'\(\)\*\+,\-\./:;\<=\>\?@\[\\\]\^_`\{\|\}~]}
  *          {@code [\X21-\X2F\X31-\X40\X5B-\X60\X7B-\X7E]} -->
- * <tr><td valign="top" headers="construct posix">{@code \p{Graph}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Graph}}</td>
  *     <td headers="matches">A visible character: {@code [\p{Alnum}\p{Punct}]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{Print}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Print}}</td>
  *     <td headers="matches">A printable character: {@code [\p{Graph}\x20]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{Blank}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Blank}}</td>
  *     <td headers="matches">A space or a tab: {@code [ \t]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{Cntrl}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Cntrl}}</td>
  *     <td headers="matches">A control character: {@code [\x00-\x1F\x7F]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{XDigit}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{XDigit}}</td>
  *     <td headers="matches">A hexadecimal digit: {@code [0-9a-fA-F]}</td></tr>
- * <tr><td valign="top" headers="construct posix">{@code \p{Space}}</td>
+ * <tr><td style="vertical-align:top" headers="construct posix">{@code \p{Space}}</td>
  *     <td headers="matches">A whitespace character: {@code [ \t\n\x0B\f\r]}</td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2">java.lang.Character classes (simple <a href="#jcc">java character type</a>)</th></tr>
+ * <tr style="text-align:left"><th colspan="2">java.lang.Character classes (simple <a href="#jcc">java character type</a>)</th></tr>
  *
- * <tr><td valign="top">{@code \p{javaLowerCase}}</td>
+ * <tr><td style="vertical-align:top">{@code \p{javaLowerCase}}</td>
  *     <td>Equivalent to java.lang.Character.isLowerCase()</td></tr>
- * <tr><td valign="top">{@code \p{javaUpperCase}}</td>
+ * <tr><td style="vertical-align:top">{@code \p{javaUpperCase}}</td>
  *     <td>Equivalent to java.lang.Character.isUpperCase()</td></tr>
- * <tr><td valign="top">{@code \p{javaWhitespace}}</td>
+ * <tr><td style="vertical-align:top">{@code \p{javaWhitespace}}</td>
  *     <td>Equivalent to java.lang.Character.isWhitespace()</td></tr>
- * <tr><td valign="top">{@code \p{javaMirrored}}</td>
+ * <tr><td style="vertical-align:top">{@code \p{javaMirrored}}</td>
  *     <td>Equivalent to java.lang.Character.isMirrored()</td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="unicode">Classes for Unicode scripts, blocks, categories and binary properties</th></tr>
- * <tr><td valign="top" headers="construct unicode">{@code \p{IsLatin}}</td>
+ * <tr style="text-align:left"><th colspan="2" id="unicode">Classes for Unicode scripts, blocks, categories and binary properties</th></tr>
+ * <tr><td style="vertical-align:top" headers="construct unicode">{@code \p{IsLatin}}</td>
  *     <td headers="matches">A Latin&nbsp;script character (<a href="#usc">script</a>)</td></tr>
- * <tr><td valign="top" headers="construct unicode">{@code \p{InGreek}}</td>
+ * <tr><td style="vertical-align:top" headers="construct unicode">{@code \p{InGreek}}</td>
  *     <td headers="matches">A character in the Greek&nbsp;block (<a href="#ubc">block</a>)</td></tr>
- * <tr><td valign="top" headers="construct unicode">{@code \p{Lu}}</td>
+ * <tr><td style="vertical-align:top" headers="construct unicode">{@code \p{Lu}}</td>
  *     <td headers="matches">An uppercase letter (<a href="#ucc">category</a>)</td></tr>
- * <tr><td valign="top" headers="construct unicode">{@code \p{IsAlphabetic}}</td>
+ * <tr><td style="vertical-align:top" headers="construct unicode">{@code \p{IsAlphabetic}}</td>
  *     <td headers="matches">An alphabetic character (<a href="#ubpc">binary property</a>)</td></tr>
- * <tr><td valign="top" headers="construct unicode">{@code \p{Sc}}</td>
+ * <tr><td style="vertical-align:top" headers="construct unicode">{@code \p{Sc}}</td>
  *     <td headers="matches">A currency symbol</td></tr>
- * <tr><td valign="top" headers="construct unicode">{@code \P{InGreek}}</td>
+ * <tr><td style="vertical-align:top" headers="construct unicode">{@code \P{InGreek}}</td>
  *     <td headers="matches">Any character except one in the Greek block (negation)</td></tr>
- * <tr><td valign="top" headers="construct unicode">{@code [\p{L}&&[^\p{Lu}]]}</td>
+ * <tr><td style="vertical-align:top" headers="construct unicode">{@code [\p{L}&&[^\p{Lu}]]}</td>
  *     <td headers="matches">Any letter except an uppercase letter (subtraction)</td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="bounds">Boundary matchers</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="bounds">Boundary matchers</th></tr>
  *
- * <tr><td valign="top" headers="construct bounds">{@code ^}</td>
+ * <tr><td style="vertical-align:top" headers="construct bounds">{@code ^}</td>
  *     <td headers="matches">The beginning of a line</td></tr>
- * <tr><td valign="top" headers="construct bounds">{@code $}</td>
+ * <tr><td style="vertical-align:top" headers="construct bounds">{@code $}</td>
  *     <td headers="matches">The end of a line</td></tr>
- * <tr><td valign="top" headers="construct bounds">{@code \b}</td>
+ * <tr><td style="vertical-align:top" headers="construct bounds">{@code \b}</td>
  *     <td headers="matches">A word boundary</td></tr>
- * <tr><td valign="top" headers="construct bounds">{@code \b{g}}</td>
+ * <tr><td style="vertical-align:top" headers="construct bounds">{@code \b{g}}</td>
  *     <td headers="matches">A Unicode extended grapheme cluster boundary</td></tr>
- * <tr><td valign="top" headers="construct bounds">{@code \B}</td>
+ * <tr><td style="vertical-align:top" headers="construct bounds">{@code \B}</td>
  *     <td headers="matches">A non-word boundary</td></tr>
- * <tr><td valign="top" headers="construct bounds">{@code \A}</td>
+ * <tr><td style="vertical-align:top" headers="construct bounds">{@code \A}</td>
  *     <td headers="matches">The beginning of the input</td></tr>
- * <tr><td valign="top" headers="construct bounds">{@code \G}</td>
+ * <tr><td style="vertical-align:top" headers="construct bounds">{@code \G}</td>
  *     <td headers="matches">The end of the previous match</td></tr>
- * <tr><td valign="top" headers="construct bounds">{@code \Z}</td>
+ * <tr><td style="vertical-align:top" headers="construct bounds">{@code \Z}</td>
  *     <td headers="matches">The end of the input but for the final
  *         <a href="#lt">terminator</a>, if&nbsp;any</td></tr>
- * <tr><td valign="top" headers="construct bounds">{@code \z}</td>
+ * <tr><td style="vertical-align:top" headers="construct bounds">{@code \z}</td>
  *     <td headers="matches">The end of the input</td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="lineending">Linebreak matcher</th></tr>
- * <tr><td valign="top" headers="construct lineending">{@code \R}</td>
+ * <tr style="text-align:left"><th colspan="2" id="lineending">Linebreak matcher</th></tr>
+ * <tr><td style="vertical-align:top" headers="construct lineending">{@code \R}</td>
  *     <td headers="matches">Any Unicode linebreak sequence, is equivalent to
  *     <code>&#92;u000D&#92;u000A|[&#92;u000A&#92;u000B&#92;u000C&#92;u000D&#92;u0085&#92;u2028&#92;u2029]
  *     </code></td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="grapheme">Unicode Extended Grapheme matcher</th></tr>
- * <tr><td valign="top" headers="construct grapheme">{@code \X}</td>
+ * <tr style="text-align:left"><th colspan="2" id="grapheme">Unicode Extended Grapheme matcher</th></tr>
+ * <tr><td style="vertical-align:top" headers="construct grapheme">{@code \X}</td>
  *     <td headers="matches">Any Unicode extended grapheme cluster</td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="greedy">Greedy quantifiers</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="greedy">Greedy quantifiers</th></tr>
  *
- * <tr><td valign="top" headers="construct greedy"><i>X</i>{@code ?}</td>
+ * <tr><td style="vertical-align:top" headers="construct greedy"><i>X</i>{@code ?}</td>
  *     <td headers="matches"><i>X</i>, once or not at all</td></tr>
- * <tr><td valign="top" headers="construct greedy"><i>X</i>{@code *}</td>
+ * <tr><td style="vertical-align:top" headers="construct greedy"><i>X</i>{@code *}</td>
  *     <td headers="matches"><i>X</i>, zero or more times</td></tr>
- * <tr><td valign="top" headers="construct greedy"><i>X</i>{@code +}</td>
+ * <tr><td style="vertical-align:top" headers="construct greedy"><i>X</i>{@code +}</td>
  *     <td headers="matches"><i>X</i>, one or more times</td></tr>
- * <tr><td valign="top" headers="construct greedy"><i>X</i><code>{</code><i>n</i><code>}</code></td>
+ * <tr><td style="vertical-align:top" headers="construct greedy"><i>X</i><code>{</code><i>n</i><code>}</code></td>
  *     <td headers="matches"><i>X</i>, exactly <i>n</i> times</td></tr>
- * <tr><td valign="top" headers="construct greedy"><i>X</i><code>{</code><i>n</i>{@code ,}}</td>
+ * <tr><td style="vertical-align:top" headers="construct greedy"><i>X</i><code>{</code><i>n</i>{@code ,}}</td>
  *     <td headers="matches"><i>X</i>, at least <i>n</i> times</td></tr>
- * <tr><td valign="top" headers="construct greedy"><i>X</i><code>{</code><i>n</i>{@code ,}<i>m</i><code>}</code></td>
+ * <tr><td style="vertical-align:top" headers="construct greedy"><i>X</i><code>{</code><i>n</i>{@code ,}<i>m</i><code>}</code></td>
  *     <td headers="matches"><i>X</i>, at least <i>n</i> but not more than <i>m</i> times</td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="reluc">Reluctant quantifiers</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="reluc">Reluctant quantifiers</th></tr>
  *
- * <tr><td valign="top" headers="construct reluc"><i>X</i>{@code ??}</td>
+ * <tr><td style="vertical-align:top" headers="construct reluc"><i>X</i>{@code ??}</td>
  *     <td headers="matches"><i>X</i>, once or not at all</td></tr>
- * <tr><td valign="top" headers="construct reluc"><i>X</i>{@code *?}</td>
+ * <tr><td style="vertical-align:top" headers="construct reluc"><i>X</i>{@code *?}</td>
  *     <td headers="matches"><i>X</i>, zero or more times</td></tr>
- * <tr><td valign="top" headers="construct reluc"><i>X</i>{@code +?}</td>
+ * <tr><td style="vertical-align:top" headers="construct reluc"><i>X</i>{@code +?}</td>
  *     <td headers="matches"><i>X</i>, one or more times</td></tr>
- * <tr><td valign="top" headers="construct reluc"><i>X</i><code>{</code><i>n</i><code>}?</code></td>
+ * <tr><td style="vertical-align:top" headers="construct reluc"><i>X</i><code>{</code><i>n</i><code>}?</code></td>
  *     <td headers="matches"><i>X</i>, exactly <i>n</i> times</td></tr>
- * <tr><td valign="top" headers="construct reluc"><i>X</i><code>{</code><i>n</i><code>,}?</code></td>
+ * <tr><td style="vertical-align:top" headers="construct reluc"><i>X</i><code>{</code><i>n</i><code>,}?</code></td>
  *     <td headers="matches"><i>X</i>, at least <i>n</i> times</td></tr>
- * <tr><td valign="top" headers="construct reluc"><i>X</i><code>{</code><i>n</i>{@code ,}<i>m</i><code>}?</code></td>
+ * <tr><td style="vertical-align:top" headers="construct reluc"><i>X</i><code>{</code><i>n</i>{@code ,}<i>m</i><code>}?</code></td>
  *     <td headers="matches"><i>X</i>, at least <i>n</i> but not more than <i>m</i> times</td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="poss">Possessive quantifiers</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="poss">Possessive quantifiers</th></tr>
  *
- * <tr><td valign="top" headers="construct poss"><i>X</i>{@code ?+}</td>
+ * <tr><td style="vertical-align:top" headers="construct poss"><i>X</i>{@code ?+}</td>
  *     <td headers="matches"><i>X</i>, once or not at all</td></tr>
- * <tr><td valign="top" headers="construct poss"><i>X</i>{@code *+}</td>
+ * <tr><td style="vertical-align:top" headers="construct poss"><i>X</i>{@code *+}</td>
  *     <td headers="matches"><i>X</i>, zero or more times</td></tr>
- * <tr><td valign="top" headers="construct poss"><i>X</i>{@code ++}</td>
+ * <tr><td style="vertical-align:top" headers="construct poss"><i>X</i>{@code ++}</td>
  *     <td headers="matches"><i>X</i>, one or more times</td></tr>
- * <tr><td valign="top" headers="construct poss"><i>X</i><code>{</code><i>n</i><code>}+</code></td>
+ * <tr><td style="vertical-align:top" headers="construct poss"><i>X</i><code>{</code><i>n</i><code>}+</code></td>
  *     <td headers="matches"><i>X</i>, exactly <i>n</i> times</td></tr>
- * <tr><td valign="top" headers="construct poss"><i>X</i><code>{</code><i>n</i><code>,}+</code></td>
+ * <tr><td style="vertical-align:top" headers="construct poss"><i>X</i><code>{</code><i>n</i><code>,}+</code></td>
  *     <td headers="matches"><i>X</i>, at least <i>n</i> times</td></tr>
- * <tr><td valign="top" headers="construct poss"><i>X</i><code>{</code><i>n</i>{@code ,}<i>m</i><code>}+</code></td>
+ * <tr><td style="vertical-align:top" headers="construct poss"><i>X</i><code>{</code><i>n</i>{@code ,}<i>m</i><code>}+</code></td>
  *     <td headers="matches"><i>X</i>, at least <i>n</i> but not more than <i>m</i> times</td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="logical">Logical operators</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="logical">Logical operators</th></tr>
  *
- * <tr><td valign="top" headers="construct logical"><i>XY</i></td>
+ * <tr><td style="vertical-align:top" headers="construct logical"><i>XY</i></td>
  *     <td headers="matches"><i>X</i> followed by <i>Y</i></td></tr>
- * <tr><td valign="top" headers="construct logical"><i>X</i>{@code |}<i>Y</i></td>
+ * <tr><td style="vertical-align:top" headers="construct logical"><i>X</i>{@code |}<i>Y</i></td>
  *     <td headers="matches">Either <i>X</i> or <i>Y</i></td></tr>
- * <tr><td valign="top" headers="construct logical">{@code (}<i>X</i>{@code )}</td>
+ * <tr><td style="vertical-align:top" headers="construct logical">{@code (}<i>X</i>{@code )}</td>
  *     <td headers="matches">X, as a <a href="#cg">capturing group</a></td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="backref">Back references</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="backref">Back references</th></tr>
  *
- * <tr><td valign="bottom" headers="construct backref">{@code \}<i>n</i></td>
- *     <td valign="bottom" headers="matches">Whatever the <i>n</i><sup>th</sup>
+ * <tr><td style="vertical-align:bottom" headers="construct backref">{@code \}<i>n</i></td>
+ *     <td style="vertical-align:bottom" headers="matches">Whatever the <i>n</i><sup>th</sup>
  *     <a href="#cg">capturing group</a> matched</td></tr>
  *
- * <tr><td valign="bottom" headers="construct backref">{@code \}<i>k</i>&lt;<i>name</i>&gt;</td>
- *     <td valign="bottom" headers="matches">Whatever the
+ * <tr><td style="vertical-align:bottom" headers="construct backref">{@code \}<i>k</i>&lt;<i>name</i>&gt;</td>
+ *     <td style="vertical-align:bottom" headers="matches">Whatever the
  *     <a href="#groupname">named-capturing group</a> "name" matched</td></tr>
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="quot">Quotation</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="quot">Quotation</th></tr>
  *
- * <tr><td valign="top" headers="construct quot">{@code \}</td>
+ * <tr><td style="vertical-align:top" headers="construct quot">{@code \}</td>
  *     <td headers="matches">Nothing, but quotes the following character</td></tr>
- * <tr><td valign="top" headers="construct quot">{@code \Q}</td>
+ * <tr><td style="vertical-align:top" headers="construct quot">{@code \Q}</td>
  *     <td headers="matches">Nothing, but quotes all characters until {@code \E}</td></tr>
- * <tr><td valign="top" headers="construct quot">{@code \E}</td>
+ * <tr><td style="vertical-align:top" headers="construct quot">{@code \E}</td>
  *     <td headers="matches">Nothing, but ends quoting started by {@code \Q}</td></tr>
  *     <!-- Metachars: !$()*+.<>?[\]^{|} -->
  *
  * <tr><th>&nbsp;</th></tr>
- * <tr align="left"><th colspan="2" id="special">Special constructs (named-capturing and non-capturing)</th></tr>
+ * <tr style="text-align:left"><th colspan="2" id="special">Special constructs (named-capturing and non-capturing)</th></tr>
  *
- * <tr><td valign="top" headers="construct special"><code>(?&lt;<a href="#groupname">name</a>&gt;</code><i>X</i>{@code )}</td>
+ * <tr><td style="vertical-align:top" headers="construct special"><code>(?&lt;<a href="#groupname">name</a>&gt;</code><i>X</i>{@code )}</td>
  *     <td headers="matches"><i>X</i>, as a named-capturing group</td></tr>
- * <tr><td valign="top" headers="construct special">{@code (?:}<i>X</i>{@code )}</td>
+ * <tr><td style="vertical-align:top" headers="construct special">{@code (?:}<i>X</i>{@code )}</td>
  *     <td headers="matches"><i>X</i>, as a non-capturing group</td></tr>
- * <tr><td valign="top" headers="construct special"><code>(?idmsuxU-idmsuxU)&nbsp;</code></td>
+ * <tr><td style="vertical-align:top" headers="construct special"><code>(?idmsuxU-idmsuxU)&nbsp;</code></td>
  *     <td headers="matches">Nothing, but turns match flags <a href="#CASE_INSENSITIVE">i</a>
  * <a href="#UNIX_LINES">d</a> <a href="#MULTILINE">m</a> <a href="#DOTALL">s</a>
  * <a href="#UNICODE_CASE">u</a> <a href="#COMMENTS">x</a> <a href="#UNICODE_CHARACTER_CLASS">U</a>
  * on - off</td></tr>
- * <tr><td valign="top" headers="construct special"><code>(?idmsux-idmsux:</code><i>X</i>{@code )}&nbsp;&nbsp;</td>
+ * <tr><td style="vertical-align:top" headers="construct special"><code>(?idmsux-idmsux:</code><i>X</i>{@code )}&nbsp;&nbsp;</td>
  *     <td headers="matches"><i>X</i>, as a <a href="#cg">non-capturing group</a> with the
  *         given flags <a href="#CASE_INSENSITIVE">i</a> <a href="#UNIX_LINES">d</a>
  * <a href="#MULTILINE">m</a> <a href="#DOTALL">s</a> <a href="#UNICODE_CASE">u</a >
  * <a href="#COMMENTS">x</a> on - off</td></tr>
- * <tr><td valign="top" headers="construct special">{@code (?=}<i>X</i>{@code )}</td>
+ * <tr><td style="vertical-align:top" headers="construct special">{@code (?=}<i>X</i>{@code )}</td>
  *     <td headers="matches"><i>X</i>, via zero-width positive lookahead</td></tr>
- * <tr><td valign="top" headers="construct special">{@code (?!}<i>X</i>{@code )}</td>
+ * <tr><td style="vertical-align:top" headers="construct special">{@code (?!}<i>X</i>{@code )}</td>
  *     <td headers="matches"><i>X</i>, via zero-width negative lookahead</td></tr>
- * <tr><td valign="top" headers="construct special">{@code (?<=}<i>X</i>{@code )}</td>
+ * <tr><td style="vertical-align:top" headers="construct special">{@code (?<=}<i>X</i>{@code )}</td>
  *     <td headers="matches"><i>X</i>, via zero-width positive lookbehind</td></tr>
- * <tr><td valign="top" headers="construct special">{@code (?<!}<i>X</i>{@code )}</td>
+ * <tr><td style="vertical-align:top" headers="construct special">{@code (?<!}<i>X</i>{@code )}</td>
  *     <td headers="matches"><i>X</i>, via zero-width negative lookbehind</td></tr>
- * <tr><td valign="top" headers="construct special">{@code (?>}<i>X</i>{@code )}</td>
+ * <tr><td style="vertical-align:top" headers="construct special">{@code (?>}<i>X</i>{@code )}</td>
  *     <td headers="matches"><i>X</i>, as an independent, non-capturing group</td></tr>
  *
  * </table>
@@ -643,9 +643,9 @@
  *
  * <table border="0" cellpadding="1" cellspacing="0"
  *  summary="predefined and posix character classes in Unicode mode">
- * <tr align="left">
- * <th align="left" id="predef_classes">Classes</th>
- * <th align="left" id="predef_matches">Matches</th>
+ * <tr style="text-align:left">
+ * <th style="text-align:left" id="predef_classes">Classes</th>
+ * <th style="text-align:left" id="predef_matches">Matches</th>
  *</tr>
  * <tr><td>{@code \p{Lower}}</td>
  *     <td>A lowercase character:{@code \p{IsLowercase}}</td></tr>
@@ -1209,26 +1209,26 @@
      *
      * <blockquote><table cellpadding=1 cellspacing=0
      *              summary="Split examples showing regex, limit, and result">
-     * <tr><th align="left"><i>Regex&nbsp;&nbsp;&nbsp;&nbsp;</i></th>
-     *     <th align="left"><i>Limit&nbsp;&nbsp;&nbsp;&nbsp;</i></th>
-     *     <th align="left"><i>Result&nbsp;&nbsp;&nbsp;&nbsp;</i></th></tr>
-     * <tr><td align=center>:</td>
-     *     <td align=center>2</td>
+     * <tr><th style="text-align:left"><i>Regex&nbsp;&nbsp;&nbsp;&nbsp;</i></th>
+     *     <th style="text-align:left"><i>Limit&nbsp;&nbsp;&nbsp;&nbsp;</i></th>
+     *     <th style="text-align:left"><i>Result&nbsp;&nbsp;&nbsp;&nbsp;</i></th></tr>
+     * <tr><td style="text-align:center">:</td>
+     *     <td style="text-align:center">2</td>
      *     <td>{@code { "boo", "and:foo" }}</td></tr>
-     * <tr><td align=center>:</td>
-     *     <td align=center>5</td>
+     * <tr><td style="text-align:center">:</td>
+     *     <td style="text-align:center">5</td>
      *     <td>{@code { "boo", "and", "foo" }}</td></tr>
-     * <tr><td align=center>:</td>
-     *     <td align=center>-2</td>
+     * <tr><td style="text-align:center">:</td>
+     *     <td style="text-align:center">-2</td>
      *     <td>{@code { "boo", "and", "foo" }}</td></tr>
-     * <tr><td align=center>o</td>
-     *     <td align=center>5</td>
+     * <tr><td style="text-align:center">o</td>
+     *     <td style="text-align:center">5</td>
      *     <td>{@code { "b", "", ":and:f", "", "" }}</td></tr>
-     * <tr><td align=center>o</td>
-     *     <td align=center>-2</td>
+     * <tr><td style="text-align:center">o</td>
+     *     <td style="text-align:center">-2</td>
      *     <td>{@code { "b", "", ":and:f", "", "" }}</td></tr>
-     * <tr><td align=center>o</td>
-     *     <td align=center>0</td>
+     * <tr><td style="text-align:center">o</td>
+     *     <td style="text-align:center">0</td>
      *     <td>{@code { "b", "", ":and:f" }}</td></tr>
      * </table></blockquote>
      *
@@ -1296,11 +1296,11 @@
      *
      * <blockquote><table cellpadding=1 cellspacing=0
      *              summary="Split examples showing regex and result">
-     * <tr><th align="left"><i>Regex&nbsp;&nbsp;&nbsp;&nbsp;</i></th>
-     *     <th align="left"><i>Result</i></th></tr>
-     * <tr><td align=center>:</td>
+     * <tr><th style="text-align:left"><i>Regex&nbsp;&nbsp;&nbsp;&nbsp;</i></th>
+     *     <th style="text-align:left"><i>Result</i></th></tr>
+     * <tr><td style="text-align:center">:</td>
      *     <td>{@code { "boo", "and", "foo" }}</td></tr>
-     * <tr><td align=center>o</td>
+     * <tr><td style="text-align:center">o</td>
      *     <td>{@code { "b", "", ":and:f" }}</td></tr>
      * </table></blockquote>
      *