wpt / css / css-gaps / grid / subgrid / fragmentation / subgrid-gap-decorations-fragmentation-016.html

Status: FAIL | Duration: 14ms | Subtests: 0/1 | Open test on wpt.live | Open ref on wpt.live | wpt.fyi

/css/css-gaps/grid/subgrid/fragmentation/subgrid-gap-decorations-fragmentation-016.html

<!DOCTYPE html>
<title>
  Gap Decorations are shown in a grid that's fragmented. Suppressed row gaps do not
  have decorations. Test scenario where the subgrid has a forced break and has *rule-break
  set to intersection.
</title>
<link rel="help" href="https://drafts.csswg.org/css-gaps-1/">
<link rel="match" href="subgrid-gap-decorations-fragmentation-016-ref.html">
<link rel="author" title="Sam Davis Omekara Jr." href="mailto:samomekarajr@microsoft.com">
<style>
  body {
    margin: 0px;
  }
  .multicol {
    position: relative;
    columns: 3;
    column-fill: auto;
    width: 420px;
    height: 72px;
    background: yellow;
    column-gap: 0px;
  }
  .grid-container {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: repeat(5, 1fr);

    gap: 10px;
    height: 140px;
    column-rule: skyblue solid 10px;
    row-rule: cornflowerblue solid 10px;
    column-rule-break: intersection;
    row-rule-break: intersection;
    column-rule-inset: 0px;
    row-rule-inset: 0px;
  }
  .subgrid {
    display: grid;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;
    background: orange;
    grid-column: 2 / -2;
    grid-row: 2 / -2;
    column-rule: white solid 10px;
    row-rule: blue solid 10px;
    column-rule-break: intersection;
    row-rule-break: intersection;
    column-rule-inset: 0px;
    row-rule-inset: 0px;
  }
  .item {
    background: purple;
  }
</style>
<div class="multicol">
  <div class="grid-container">
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="subgrid" style="break-before: column;">
      <div class="item"></div>
      <div class="item"></div>
      <div class="item"></div>
      <div class="item"></div>
      <div class="item"></div>
      <div class="item"></div>
      <div class="item"></div>
      <div class="item"></div>
      <div class="item"></div>
    </div>
  </div>
</div>

/css/css-gaps/grid/subgrid/fragmentation/subgrid-gap-decorations-fragmentation-016-ref.html

<!DOCTYPE html>
<link rel="help" href="https://drafts.csswg.org/css-gaps-1/">
<link rel="author" title="Sam Davis Omekara Jr." href="mailto:samomekarajr@microsoft.com">
<style>
  body {
    margin: 0px;
  }
  .multicol {
    position: relative;
    columns: 3;
    column-fill: auto;
    width: 420px;
    height: 72px;
    background: yellow;
    column-gap: 0px;
  }
  .grid-container {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: 20px 10px 20px 10px 20px 10px 20px 10px 20px;
    column-gap: 10px;
  }
  .subgrid {
    display: grid;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;
    background: teal;
    grid-column: 2 / -2;
    grid-row: 3 / -3;
    background: orange;
  }
  .item {
    background: purple;
  }
  .col-gap-group {
    position: absolute;
    top: 0px;
    left: 20px;
    display: flex;
    gap: 20px;
    height: 72px;
  }
  .col-gap {
    width: 10px;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
  }
  .col-gap-segment {
    background: skyblue;
    height: 20px;
  }
  .row-gap-group {
    position: absolute;
    top: 20px;
    left: 140px;
    display: flex;
    flex-direction: column;
    row-gap: 20px;
    width: 140px;
  }
  .row-gap {
    height: 10px;
    display: flex;
    flex-direction: row;
    column-gap: 10px;
  }
  .row-gap-segment {
    background: cornflowerblue;
    width: 20px;
  }
</style>
<div class="multicol">
  <div class="grid-container">
    <div class="item" style="grid-row:1;"></div>
    <div class="item" style="grid-row:1;"></div>
    <div class="item" style="grid-row:1;"></div>
    <div class="item" style="grid-row:1;"></div>
    <div class="item" style="grid-row:1;"></div>
    <div class="item" style="grid-row:3;"></div>
    <div class="item" style="grid-row:3;"></div>
    <div class="item" style="grid-row:5;"></div>
    <div class="item" style="grid-row:5;"></div>
    <div class="item" style="grid-row:7;"></div>
    <div class="item" style="grid-row:7;"></div>
    <div class="item" style="grid-row:9;"></div>
    <div class="item" style="grid-row:9;"></div>
    <div class="item" style="grid-row:9;"></div>
    <div class="item" style="grid-row:9;"></div>
    <div class="item" style="grid-row:9;"></div>
    <div class="subgrid" style="break-before: column;">
      <div class="item" style="grid-row:1;"></div>
      <div class="item" style="grid-row:1;"></div>
      <div class="item" style="grid-row:1;"></div>
      <div class="item" style="grid-row:3;"></div>
      <div class="item" style="grid-row:3;"></div>
      <div class="item" style="grid-row:3;"></div>
      <div class="item" style="grid-row:5;"></div>
      <div class="item" style="grid-row:5;"></div>
      <div class="item" style="grid-row:5;"></div>
    </div>
  </div>
  <div class="col-gap-group">
    <div class="col-gap">
      <div class="col-gap-segment" style="height: 100%;"></div>
    </div>
    <div class="col-gap">
      <div class="col-gap-segment" style="height: 100%;"></div>
    </div>
    <div class="col-gap">
      <div class="col-gap-segment" style="height: 100%;"></div>
    </div>
    <div class="col-gap">
      <div class="col-gap-segment" style="height: 100%;"></div>
    </div>
  </div>

  <div class="col-gap-group" style="left: 160px; height: 72px;">
    <div class="col-gap">
      <div class="col-gap-segment"></div>
      <div class="col-gap-segment"></div>
      <div class="col-gap-segment" style="height: 12px;"></div>
    </div>
    <div class="col-gap">
      <div class="col-gap-segment"></div>
      <div class="col-gap-segment"></div>
      <div class="col-gap-segment" style="height: 12px;"></div>
    </div>
    <div class="col-gap">
      <div class="col-gap-segment"></div>
      <div class="col-gap-segment"></div>
      <div class="col-gap-segment" style="height: 12px;"></div>
    </div>
    <div class="col-gap">
      <div class="col-gap-segment"></div>
      <div class="col-gap-segment"></div>
      <div class="col-gap-segment" style="height: 12px;"></div>
    </div>
  </div>

  <div class="col-gap-group" style="left: 300px; height:38px;">
    <div class="col-gap">
      <div class="col-gap-segment" style="height: 8px;"></div>
      <div class="col-gap-segment"></div>
    </div>
    <div class="col-gap">
      <div class="col-gap-segment" style="height: 8px;"></div>
      <div class="col-gap-segment"></div>
    </div>
    <div class="col-gap">
      <div class="col-gap-segment" style="height: 8px;"></div>
      <div class="col-gap-segment"></div>
    </div>
    <div class="col-gap">
      <div class="col-gap-segment" style="height: 8px;"></div>
      <div class="col-gap-segment"></div>
    </div>
  </div>

  <div class="col-gap-group" style="height: 72px; top: 0px; left: 190px;">
    <div class="col-gap">
      <div class="col-gap-segment" style="background: white;"></div>
      <div class="col-gap-segment" style="background: white;"></div>
      <div class="col-gap-segment" style="height: 12px; background: white;"></div>
    </div>
    <div class="col-gap">
      <div class="col-gap-segment" style="background: white;"></div>
      <div class="col-gap-segment" style="background: white;"></div>
      <div class="col-gap-segment" style="height: 12px; background: white;"></div>
    </div>
  </div>

  <div class="col-gap-group" style="height: 8px; top: 0px; left: 330px;">
    <div class="col-gap" style="background: white;"></div>
    <div class="col-gap" style="background: white;"></div>
  </div>

  <div class="row-gap-group">
    <div class="row-gap">
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
    </div>
    <div class="row-gap">
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
    </div>
  </div>

  <div class="row-gap-group" style="top: 20px; left: 170px; width: 80px;">
    <div class="row-gap">
      <div class="row-gap-segment" style="background: blue;"></div>
      <div class="row-gap-segment" style="background: blue;"></div>
      <div class="row-gap-segment" style="background: blue;"></div>
    </div>
  </div>

  <div class="row-gap-group" style="top: 50px; left: 170px; width: 80px;">
    <div class="row-gap">
      <div class="row-gap-segment" style="background: blue;"></div>
      <div class="row-gap-segment" style="background: blue;"></div>
      <div class="row-gap-segment" style="background: blue;"></div>
    </div>
  </div>

  <div class="row-gap-group" style=" top: 8px; left:280px;">
    <div class="row-gap">
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
      <div class="row-gap-segment"></div>
    </div>
  </div>
</div>