<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

 <head>

  <title>CSS Test: table-layout: fixed - cell in the first row with specified width</title>

  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
  <link rel="help" href="http://www.w3.org/TR/CSS21/tables.html#fixed-table-layout" />
  <link rel="bookmark" href="http://lists.w3.org/Archives/Public/www-style/2011Oct/0502.html" title="[css21] Section 17.5.2.1 should be clarified" />
  <link rel="match" href="fixed-table-layout-003e09-ref.xht" />

  <meta name="flags" content="" />
  <meta name="assert" content="A cell in the first row with specified non-auto 'width' sets the width for its column in the absence of a column element with specified non-auto width. This test checks the 'border-collapse: collapse' model with non-zero symetrical horizontal cell padding and with one non-zero horizontal cell border." />

  <style type="text/css"><![CDATA[
  div, table {font: 1.25em/1.2 serif;}

  table
  {
  border-collapse: collapse;
  table-layout: fixed;
  width: 400px;
  }

  td {padding: 0px 24px;}

  td#tested-cell
  {
  background-color: blue;
  border-left: orange solid 0px;
  border-right: orange solid 72px;
  color: blue;
  width: 80px;
  }

  div#reference
  {
  background-color: black;
  color: black;
  margin-left: 118px;

  /*

  "
  In the fixed table layout algorithm, the width of each column is determined as follows:

  (...) a cell in the first row with a value other than 'auto' for the 'width' property determines the width for that column. (...)
    Any remaining columns equally divide the remaining horizontal table space (minus borders or cell spacing).
  "
  Section 17.5.2.1 Fixed table layout
  http://www.w3.org/TR/CSS21/tables.html#fixed-table-layout


  Middle column width calculations
  --------------------------------

   36px : half of border-left since such border must be split with cell in 1st column
 +
   24px : padding-left of the cell in the middle column
 +
   80px : width of the cell in the middle column
 +
   24px : padding-right of the cell in the middle column
  =======
  164px : width of the middle column


  So,
      400px : table set width
    -
      164px : width of the middle column
      ======
      236px

      So, each of the 2 remaining columns must be
      half of such extra horizontal table space,
      which is 236px divided by 2 == 118px.

  1st column width calculations
  -----------------------------

    24px    : padding-left of cell in 1st column
  +
    (solve) : width of cell in 1st column
  +
    24px    : padding-right of cell in 1st column
   ======
   118px    : width of 1st column

  So, the width of the cell in first column must be exactly 70px.


  3rd column width calculations
  -----------------------------

    36px    : half of border-right of cell in middle column
              since such border must be split with cell in 3rd column
  +
    24px    : padding-left of cell in 3rd column
  +
    (solve) : width of cell in 3rd column
  +
    24px    : padding-right of cell in 3rd column
   =======
   118px    : width of 3rd column

   So, the width of the cell in 3rd column must be exactly 34px.


  Finally, the precise horizontal point where the border-right of cell
  in first column begins to be drawn, painted is:

    24px    : padding-left of cell in 1st column
  +
    70px    : width of cell in 1st column
  +
    24px    : padding-right of cell in 1st column
  =======
   118px

  Therefore the margin-left: 118px value of the div#reference.

  */

  width: 200px;
  }
  ]]></style>

 </head>

 <body>

  <p>Test passes if the blue stripe and orange stripe are as a whole <strong>exactly as wide as</strong> the black stripe.</p>

  <table>

   <col />
   <col />
   <col />

   <tr>
    <td></td>
    <td id="tested-cell">E09</td>
    <td></td>
   </tr>

  </table>

  <div id="reference">200px wide</div>

 </body>
</html>
