File: content-visibility-auto-img-001.html

package info (click to toggle)
firefox-esr 140.5.0esr-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 4,538,920 kB
  • sloc: cpp: 7,381,527; javascript: 6,388,905; ansic: 3,710,087; python: 1,393,776; xml: 628,165; asm: 426,916; java: 184,004; sh: 65,744; makefile: 19,302; objc: 13,059; perl: 12,912; yacc: 4,583; cs: 3,846; pascal: 3,352; lex: 1,720; ruby: 1,226; exp: 762; php: 436; lisp: 258; awk: 247; sql: 66; sed: 54; csh: 10
file content (49 lines) | stat: -rw-r--r-- 1,665 bytes parent folder | download | duplicates (12)
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
<!doctype HTML>
<html class="reftest-wait">
<meta charset="utf8">
<title>CSS Test: img with content-visibility:auto honors its object-fit (restoring its aspect ratio) when coming back from offscreen</title>
<link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com">
<link rel="help" href="https://drafts.csswg.org/css-contain-2/#content-visibility">
<link rel="help" href="https://drafts.csswg.org/css-contain-2/#containment-size">
<link rel="match" href="content-visibility-auto-img-001-ref.html">
<meta name="assert" content="img elements honor their aspect-ratio and object-fit even after briefly having their aspect-ratio suppressed by content-visibility:auto">

<script src="/common/reftest-wait.js"></script>

<style>
body {
  /* body needs to be tall enough so that we can programmatically scroll.  Use
     'overflow:hidden' to suppress scrollbars so they don't interfere with the
     reftest snapshot. */
    height: 400vh;
    overflow: hidden;
}
img {
  width: 500px;  /* Much wider than the image's actual intrinsic width. */
  height: 210px; /* The image's actual intrinsic height. */
  object-fit: contain;
  object-position: 0 0;
  content-visibility: auto;
}
</style>
<img id="myImg" src="resources/dice.png">

<script>

function runTest() {
  // Scroll to the very end:
  document.documentElement.scrollTop = document.documentElement.scrollHeight;

  // Double-rAF to flush paints, and then scroll back to top
  // and take screenshot:
  requestAnimationFrame(()=>{
    requestAnimationFrame(()=>{
      document.documentElement.scrollTop = 0;
      takeScreenshot();
    });
  });
}

window.onload = runTest;
</script>
</html>