File: negative-overflow-002.html

package info (click to toggle)
thunderbird 1%3A115.16.0esr-1~deb12u1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 3,476,252 kB
  • sloc: cpp: 6,972,150; javascript: 5,209,211; ansic: 3,507,222; python: 1,137,609; asm: 432,531; xml: 205,149; java: 175,761; sh: 116,485; makefile: 22,152; perl: 13,971; objc: 12,561; yacc: 4,583; pascal: 2,840; lex: 1,720; ruby: 1,075; exp: 762; sql: 666; awk: 580; php: 436; lisp: 430; sed: 70; csh: 10
file content (64 lines) | stat: -rw-r--r-- 1,980 bytes parent folder | download | duplicates (4)
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
<!DOCTYPE html>
<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=1114306">
<style>
.container {
  width: 100px; height: 100px;
  overflow: scroll;
  border: solid 3px;
  display: inline-flex;
  padding: 10px;
  gap: 10px;
  align-items: start;
  margin: 10px;
  vertical-align: bottom;
}

.item {
  min-width: 110px; min-height: 110px;
  background: cyan;
}
</style>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
<body onload="checkLayout('.container')">
<script>
const writingModes = ['horizontal-tb', 'vertical-rl', 'vertical-lr'];
const directions = ['ltr', 'rtl'];
const flexDirections = ['row', 'row-reverse', 'column', 'column-reverse'];
const flexWraps = ['nowrap', 'wrap', 'wrap-reverse'];

for (let writingMode of writingModes) {
  for (let direction of directions) {
    for (let flexDirection of flexDirections) {
      for (let flexWrap of flexWraps) {
        let container = document.createElement('div');
        container.className = 'container';
        container.style.writingMode = writingMode;
        container.style.direction = direction;
        container.style.flexDirection = flexDirection;
        container.style.flexWrap = flexWrap;

        for (let i = 0; i < 3; i++) {
          let item = document.createElement('div');
          item.className = 'item';
          item.textContent = (i+1);
          container.appendChild(item);
        }

        let bias = writingMode == 'horizontal-tb';
        if (flexWrap != 'nowrap') {
          bias = !bias;
        }
        if (flexDirection == 'row' || flexDirection == 'row-reverse') {
          bias = !bias;
        }
        container.setAttribute('data-expected-scroll-width', bias ? 130 : 370);
        container.setAttribute('data-expected-scroll-height', bias ? 370 : 130);

        document.body.appendChild(container);
      }
    }
  }
}
</script>