summaryrefslogtreecommitdiffstats
path: root/layout/reftests/flexbox/flexbox-table-flex-items-3.html
blob: c68152856f90ca8f4e37f223e89a5c84334230be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<!DOCTYPE html>
<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<html>
<head>
  <meta charset="utf-8">
  <title>
    CSS Test: Testing that implicit "flex-basis: content" on table wrapper box
    doesn't prevent explicit table size from influencing flex base size.
  </title>
  <!-- XXXdholbert NOTE: This probably eventually should move to our
       upstreamed reftest directory.  But for now, this is just asserting
       backwards-compatible/interoperable (but not necessary spec-compliant)
       behavior, per https://github.com/w3c/csswg-drafts/issues/2604 -->
  <link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com">
  <link rel="help" href="https://www.w3.org/TR/css-flexbox-1/#flex-base-size">
  <link rel="match" href="flexbox-table-flex-items-3.html">
  <style>
  .container {
    display: flex;
    flex-direction: column;
    height: 100px;
    float: left;
    border: 1px solid black;
  }

  /* Two types of flex items: */
  .table {
    display: table;
    border: 2px solid teal;
  }
  .block {
    border: 2px solid brown;
  }

  /* Each flex item gets one of these as its contents,
     to have a nonzero content size: */
  ib {
    display: inline-block;
    background: blue;
    border: 1px solid gray;
    width: 15px;
    height: 10px;
  }
  </style>
</head>
<body>
<!-- auto size: -->
<div class="container">
  <div class="table"><ib></ib></div>
  <div class="block"><ib></ib></div>
</div>

<!-- px size: -->
<div class="container">
  <div class="table" style="height: 30px"><ib></ib></div>
  <div class="block" style="height: 30px"><ib></ib></div>
</div>

<!-- % size: -->
<div class="container">
  <div class="table" style="height: 30%"><ib></ib></div>
  <div class="block" style="height: 30%"><ib></ib></div>
</div>

<!-- calc() size: -->
<div class="container">
  <div class="table" style="height: calc(10px + 20%)"><ib></ib></div>
  <div class="block" style="height: calc(10px + 20%)"><ib></ib></div>
</div>

</body>
</html>