blob: b880e244fe17099e829d54ea62d4d53fd434b829 (
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
|
<!DOCTYPE HTML>
<html class="test-wait">
<style>
div { content-visibility: auto; }
div::after { content: "Bar" }
</style>
<div>Foo</div>
<div style="height:4000px"></div>
<script>
// Ensure no crash when removing element with generated content after
// `content-visibility: auto` content goes out of view.
requestAnimationFrame(() => {
requestAnimationFrame(() => {
// Let one layout run with the div content in view, then
// scroll it out of view.
document.scrollingElement.scrollTop = 3000;
// Run three frames to ensure a new layout happens with the
// 'auto' content hidden (i.e. layout structures are
// destroyed), then remove the div with a pseudo element which
// was previously problematic.
requestAnimationFrame(() => {
requestAnimationFrame(() => {
requestAnimationFrame(() => {
document.querySelector('div').remove();
document.documentElement.className = '';
})
})
})
})
});
</script>
|