<!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 Multi-column Layout Test: column width becomes wider to fill available space</title>
  <link rel="author" title="Hakon Wium Lie" href="mailto:howcome@opera.com" />
  <link rel="reviewer" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" /> <!--  2013-08-25  -->
  <link rel="help" href="http://www.w3.org/TR/css3-multicol/#cw" title="3.1 'column-width'" />
  <link rel="match" href="multicol-reduce-000-ref.xht" />
  <meta name="flags" content="ahem" />
  <meta name="assert" content="This test checks that column width is increased to fill the available space: in this test, there are only 2 column boxes." />
  <style type="text/css"><![CDATA[
  div#test, div#reference
  {
  background-color: yellow;
  border: black solid thin;
  color: orange;
  font: 1.25em/1 Ahem;
  margin-bottom: 0.5em;
  width: 30em;
  }

  div#test
  {
  column-gap: 0;
  column-width: 201px;

  /*

  N == max(1, floor((U + column-gap)/(column-width + column-gap)))
  N == max(1, floor((600px + 0px)/(201px + 0)))
  N == max(1, floor(600px/201px))
  N == max(1, floor(2.985))
  N == max(1, 2)
  N == 2;

  W == max(0, ((U + column-gap)/N - column-gap))
  W == max(0, ((600px + 0px)/2 - 0px))
  W == max(0, ((600px)/2 - 0px))
  W == max(0, (300px - 0px))
  W == max(0, 300px)
  W == 300px;

  */
  }

  span {color: blue;}
  ]]></style>
 </head>
 <body>

  <p>Test passes if the 2 rectangles with orange and blue vertical stripes are <strong>identical</strong>.</p>

  <div id="test">
  1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 <span>A B C D E F G H I J K L M N O P</span>
  </div>

  <div id="reference">
  1 2 3 4 5 6 7 8<span>A B C D E F G H </span><br />
  9 0 1 2 3 4 5 6<span>I J K L M N O P </span>
  </div>

 </body>
</html>
