Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(73)

Unified Diff: third_party/WebKit/LayoutTests/compositing/overflow/composited-nested-sticky-deep.html

Issue 2636253002: Handle nested position:sticky elements (Closed)
Patch Set: Rebase Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/compositing/overflow/composited-nested-sticky-deep.html
diff --git a/third_party/WebKit/LayoutTests/compositing/overflow/composited-nested-sticky-deep.html b/third_party/WebKit/LayoutTests/compositing/overflow/composited-nested-sticky-deep.html
new file mode 100644
index 0000000000000000000000000000000000000000..7c8f1f947477a30157c63e2b23155ad825455d6d
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/compositing/overflow/composited-nested-sticky-deep.html
@@ -0,0 +1,95 @@
+<script>
+if (window.testRunner)
+ testRunner.waitUntilDone();
+
+function doTest() {
+ finishTestInXFrames(2);
+}
+
+function finishTestInXFrames(frames) {
+ if (frames > 0) {
+ requestAnimationFrame(finishTestInXFrames.bind(null, frames - 1));
+ return;
+ }
+ finishTest();
+}
+
+function finishTest() {
+ for (const scroller of document.querySelectorAll('.scroller')) {
+ scroller.scrollTop = 400;
+ }
+ if (window.testRunner)
+ testRunner.notifyDone();
+}
+
+window.addEventListener('load', doTest, false);
+</script>
+
+<style>
+body {
+ margin: 0;
+}
+
+.scroller {
+ will-change: transform;
+
+ overflow: hidden; /* hide scrollbars */
+ width: 200px;
+ height: 500px;
+ outline: 2px solid black;
+}
+
+.container {
+ width: 200px;
+ height: 1000px;
+}
+
+.sticky {
+ will-change: transform;
+
+ position: sticky;
+ width: 200px;
+ top: 0;
+}
+
+.first {
+ height: 500px;
+ background: red;
+}
+
+.second {
+ height: 400px;
+ background: green;
+}
+
+.third {
+ height: 300px;
+ background: blue;
+ top: 100px;
+}
+
+.fourth {
+ height: 200px;
+ background: pink;
+ top: 100px;
+}
+
+.fifth {
+ height: 100px;
+ background: yellow;
+}
+</style>
+
+<div class="scroller">
+ <div class="container">
+ <div class="first sticky">
+ <div class="second sticky">
+ <div class="third sticky">
+ <div class="fourth sticky">
+ <div class="fifth sticky"></div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>

Powered by Google App Engine
This is Rietveld 408576698