| <!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: width of CSS table in border-collapse separate model</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#separated-borders" title="17.6.1 The separated borders model" /> |
| <link rel="match" href="../reference/ref-filled-green-100px-square.xht" /> |
| |
| <meta content="" name="flags" /> |
| <meta content="The width of a CSS table is the distance from the left inner padding edge to the right inner padding edge (including the table border spacing but excluding table padding and table borders)." name="assert" /> |
| |
| <style type="text/css"><![CDATA[ |
| div#overlapped-red |
| { |
| background-color: red; |
| height: 100px; |
| position: absolute; |
| width: 100px; |
| z-index: -1; |
| } |
| |
| div#overlapping-green-table |
| { |
| background-color: green; |
| border: green solid 10px; |
| border-collapse: separate; |
| border-spacing: 0px 5px; |
| color: green; |
| display: table; |
| font: 20px/1 serif; |
| padding-bottom: 25px; |
| table-layout: fixed; |
| width: 80px; |
| /* |
| The width of a CSS table is given by the greater of the value of |
| the 'width' property as set for the CSS table and the sum of the |
| columns width plus border spacing: |
| |
| max(set width, sum of columns width plus border spacing). |
| |
| The width (as set) of a CSS table is given by its content-box, not |
| by its border-box. |
| |
| In this testcase, the content-box must be 100px by 100px and all |
| filled with green color. |
| In this testcase, the border-box must be 200px by 200px and all |
| filled with green color. |
| |
| The set width (100px) is larger than sum of columns width plus |
| border spacing |
| |
| 0px : left-most border-spacing |
| + |
| 20px : div#td's width |
| + |
| 0px : middle border-spacing between 1st and 2nd cell |
| + |
| 20px : div#td's width |
| + |
| 0px : right-most border-spacing |
| ===== |
| 40px : sum of columns width plus border spacing |
| |
| |
| 80px : set width of table |
| - |
| 40px : sum of columns plus border spacing |
| ====== |
| 40px : the extra (exceeding) 40px width will be distributed over |
| the columns, therefore given to both cells of the table. |
| */ |
| } |
| |
| div.tr {display: table-row;} |
| |
| div.td {display: table-cell;} |
| ]]></style> |
| |
| </head> |
| |
| <body> |
| |
| <p>Test passes if there is a filled green square and <strong>no red</strong>.</p> |
| |
| <div id="overlapped-red"></div> |
| |
| <div id="overlapping-green-table"> |
| <div class="tr"> |
| <div class="td">1</div><div class="td">2</div> |
| </div> |
| <div class="tr"> |
| <div class="td">3</div><div class="td">4</div> |
| </div> |
| </div> |
| |
| </body> |
| </html> |