blob: 6fb4723529e49a550577d6f38d884028acc277f5 [file] [log] [blame]
<!DOCTYPE html>
<title>Scrolling to sticky position elements uses their unshifted position</title>
<link rel="help" href="https://www.w3.org/TR/css-position-3/#stickypos-scroll" />
<meta name="assert" content="This test checks that scrolling to sticky position elements uses their initial position" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<style>
h1 {
position: sticky;
background: #ddd;
border: 1px solid black;
top: 0px;
bottom: 0px;
}
section {
height: 100vh;
}
</style>
<body>
<h1>Title 1</h1>
<section></section>
<h1>Title 2</h1>
<section></section>
<h1>Title 3</h1>
<section></section>
<script>
test(() => {
window.scrollTo(0, 0);
const element = document.querySelectorAll('h1')[2];
element.scrollIntoView();
assert_approx_equals(document.scrollingElement.scrollTop, element.offsetTop, 1);
}, 'scrolling a sticky element into view should use its unshifted position');
</script>
</body>