<!DOCTYPE html>

  <meta charset="UTF-8">

  <title>CSS Writing Modes Test: 'writing-mode: vertical-rl' set to &lt;body&gt; element propagates to viewport</title>

  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
  <link rel="help" href="https://www.w3.org/TR/css-writing-modes-3/#principal-flow" title="8. The Principal Writing Mode">
  <!--
  Issue 3066: [css-writing-modes] Does vertical writing mode of an HTML body
  element cause an orthogonal flow?
  https://github.com/w3c/csswg-drafts/issues/3066
  -->
  <link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1102175" title="Bug 1102175: &lt;body&gt; with writing-mode: vertical-rl does not align children to the right ">
  <link rel="match" href="block-flow-direction-025-ref.xht">

  <meta name="assert" content="This test checks that when the root element has a &lt;body&gt; child element, then the principal writing mode is instead taken from the values of writing-mode and direction on the first such child element instead of taken from the root element. Also, a small script in this test verifies that the computed value of 'writing-mode' of the root element itself is not affected by such propagation.">

  <!--
  Tests 032 to 035: html's writing-mode is not specified

  Tests 036 to 039: html's writing-mode is specified as horizontal-tb

  Tests 040 to 043: html's writing-mode is specified as vertical-rl

  Tests 044 to 047: html's writing-mode is specified as vertical-lr

  Tests 048 to 051: html's writing-mode is specified as sideways-rl

  Tests 052 to 055: html's writing-mode is specified as sideways-lr
  -->

  <style>
  html
    {
      writing-mode: horizontal-tb;
    }

  body
    {
      writing-mode: vertical-rl;
    }

  div
    {
      background-color: blue;
      height: 100px;
      width: 100px;
    }

  h1#second-test-condition
    {
      background-color: red;
      color: yellow;
    }
  </style>

  <script>
  function verifyComputedValueDocRoot()
  {
  if(getComputedStyle(document.documentElement)["writing-mode"] == "horizontal-tb")
    {
    document.getElementById("second-test-condition").style.display = "none";
    };

    /*
    If the computed value of 'writing-mode' of the root element
    itself is not affected by such propagation, then the big FAIL
    word will not be displayed.
    */
  }
  </script>

 <body onload="verifyComputedValueDocRoot();">

  <div></div>

  <p><img src="support/block-flow-direction-025-exp-res.png" width="359" height="36" alt="Image download support must be enabled">

  <!--
  The image says:
  Test passes if there is a blue square in the
  <strong>upper-right corner</strong> of the page.
  -->

  <h1 id="second-test-condition">FAIL</h1>
