<!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 Writing Modes Test: 'vertical-lr' and margin collapsing - absolute positioning and siblings</title>

  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
  <link rel="help" href="http://www.w3.org/TR/css-writing-modes-3/#logical-direction-layout" title="7.4 Flow-Relative Mappings" />

  <meta content="ahem image" name="flags" />
  <meta name="assert" content="This test checks that absolutely positioned boxes do not collapse margins with siblings in 'vertical-lr' writing-mode." />

  <!--
  left static position for the div#abs-pos could be determined with margin collapse
  or without margin collapse; so there are 2 possible rendered layouts for such code
  2015-01-18

  Test adapted and modified from
  http://test.csswg.org/suites/css2.1/nightly-unstable/html4/margin-collapse-012.htm

  "
  The margin collapsing rules apply exactly with the block-start margin substituted for the top margin and the block-end margin substituted for the bottom margin.
  "
  -->

  <style type="text/css"><![CDATA[
  body
    {
      margin-left: 66px;
      /*
      The sole purpose of this rule is to increase noticeability
      of test failure in Google Chrome 40+
      */
    }

  p
    {
      font: 16px/1.25 serif; /* computes to 16px/20px */
    }

  div#test
    {
      border: teal solid 1em;
      font: 25px/1 Ahem;
      height: 4em; /* computes to 100px */
      margin-bottom: 0.2em; /* computes to 5px */
      writing-mode: vertical-lr;
    }

  div#wrapper
    {
      background-color: orange;
      border-left: blue solid 1em;
      width: 3em;
    }

  div#wrapper > div
    {
      height: 4em;
      margin-left: 1em;
    }

  div#abs-pos
    {
      background-color: blue;
      position: absolute;
      top: 97px;
      /*
      16px : p's margin-top
    +
      20px : p's top-most line box height
    +
      20px : p's bottom-most line box height
    +
      16px : p's margin-bottom
    +
      25px : div#test's border-top
   ==========
      97px
      */
      width: 1em;
    }

  div.ref
    {
      border: teal solid 1em;
      font: 25px/1 Ahem;
      height: 4em; /* computes to 100px */
      margin-bottom: 0.2em;
      width: 4em;
    }
  ]]></style>

 </head>

 <body>

  <p>Test passes if the top square has a layout<br />identical to one of the squares below it.</p>

  <div id="test">
    <div id="wrapper">
      <div id="widthless-static"></div>
      <div id="abs-pos"></div>
    </div>
  </div>

  <div class="ref" id="ref1"><img src="support/swatch-blue.png" width="25" height="100" alt="Image download support must be enabled" /><img src="support/swatch-orange.png" width="25" height="100" alt="Image download support must be enabled" /><img src="support/swatch-orange.png" width="25" height="100" alt="Image download support must be enabled" /><img src="support/swatch-blue.png" width="25" height="100" alt="Image download support must be enabled" /></div>

  <div class="ref" id="ref2"><img src="support/swatch-blue.png" width="25" height="100" alt="Image download support must be enabled" /><img src="support/swatch-orange.png" width="25" height="100" alt="Image download support must be enabled" /><img src="support/swatch-blue.png" width="25" height="100" alt="Image download support must be enabled" /><img src="support/swatch-orange.png" width="25" height="100" alt="Image download support must be enabled" /></div>

 </body>
</html>