<!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-003e07-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 72px;
  border-right: orange solid 0px;
  color: blue;
  width: 80px;
  }

  div#reference
  {
  background-color: black;
  color: black;
  margin-left: 82px;
  /*

  "
  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
  +
    36px    : half of border-left of cell in middle column
              since such border must be split with cell in 1st column
   ======
   118px    : width of 1st column

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


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

    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 70px.


  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
  +
    34px    : width of cell in 1st column
  +
    24px    : padding-right of cell in 1st column
  =======
    82px

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

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

 </head>

 <body>

  <p>Test passes if the orange stripe and blue 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">E07</td>
    <td></td>
   </tr>

  </table>

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

 </body>
</html>
