<!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-rule-color: inherit (complex)</title>
  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" /> <!--  2013-09-03 and 2016-10-02  -->
  <link rel="help" href="http://www.w3.org/TR/css3-multicol/#crc" title="4.2. 'column-rule-color'" />
  <link rel="help" href="http://www.w3.org/TR/css3-values/#common-keywords" title="3.1.1. CSS-wide keywords: 'initial' and 'inherit'" />
  <link rel="help" href="https://drafts.csswg.org/css-color-4/#currentcolor-color" title="5.2. The 'currentcolor' keyword" />
  <link rel="match" href="multicol-rule-color-inherit-001-ref.xht" />
  <meta name="flags" content="ahem" />
  <meta name="assert" content="In this test, div#parent's computed 'column-rule-color' is given by div#parent's 'currentcolor' (a reserved keyword) and not 'red'. Then div.child's 'column-rule-color' take such specified value ('currentcolor') from its parent (due to 'inherit' keyword) and not 'red'. And then, it is applied to div.child's 'column-rule-color'." />
  <style type="text/css"><![CDATA[
  div#parent
  {
  color: red;
  font: 20px/1 Ahem;
  }

  div.child
  {
  color: green;
  display: inline-block;
  font-size: 1em;
  width: 5em;

  column-count: 3;
  column-gap: 1em;
  column-rule-color: inherit;
  column-rule-style: solid;
  column-rule-width: 1em;
  }

  /*

  N == 3;

  W == max(0, (available-width - ((N - 1) * column-gap)) / N);
  W == max(0, (5em - ((3 - 1) * 1em)) / 3);
  W == max(0, (5em - (2 * 1em)) / 3);
  W == max(0, (5em - 2em) / 3);
  W == max(0, 3em / 3);
  W == max(0, 1em);
  W == 1em;

  */

  ]]></style>
 </head>

 <body>

  <p>Test passes if there are 6 vertical green stripes and <strong>no red</strong>.</p>

  <div id="parent">
	<div class="child">
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	</div>

	<div class="child">
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	</div>

	<div class="child">
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	&nbsp;
	</div>

  </div>

 </body>
</html>
