File: contain-body-overflow-002.html

package info (click to toggle)
firefox-esr 128.14.0esr-1~deb12u1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 4,230,248 kB
  • sloc: cpp: 7,104,262; javascript: 6,088,450; ansic: 3,654,017; python: 1,212,326; xml: 594,604; asm: 420,654; java: 182,969; sh: 71,124; makefile: 20,739; perl: 13,449; objc: 12,399; yacc: 4,583; cs: 3,846; pascal: 2,973; lex: 1,720; ruby: 1,194; exp: 762; php: 436; lisp: 258; awk: 247; sql: 66; sed: 54; csh: 10
file content (34 lines) | stat: -rw-r--r-- 926 bytes parent folder | download | duplicates (16)
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
<!doctype html>
<html lang=en class="reftest-wait">
<meta charset=utf-8>
<title>CSS-contain test: paint containment on body prevents overflow propagation</title>
<link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net">
<meta name="assert" content="paint containment on body prevents overflow propagation">
<link rel="match" href="reference/contain-body-overflow-001-ref.html">
<link rel="help" href="https://drafts.csswg.org/css-contain-1/#contain-property">
<style>
html, body, p, div {
    margin: 0;
    width: 200px;
    height: 200px;
}
div { background: red; }
body {
    overflow: hidden;
    contain: paint;
}
:focus {
    outline: none;
}
</style>

<div></div>
<p tabindex=1 id=target>Test passes if there is no red.
<script>
window.onload = function() {
    document.getElementById("target").focus();
    setTimeout(() => {
        document.documentElement.className = "";
    }, 0);
}
</script>