← back to Staggered Stair Loadingcompare with ground truth →
model output
Claude Sonnet 4.6
Staggered Stair Loading
A 0.84T 0.29
1Looking at the animation frames, I can see:
2
31. A "LOADING" text where each letter is on a dark tile/card
42. The tiles animate with a wave-like up-down motion (each letter bounces up then down sequentially)
53. There's a light blue/white shadow/reflection below each tile that also moves
64. The animation creates a cascading wave effect from left to right, then repeats
7
8<!DOCTYPE html>
9<html lang="en">
10<head>
11<meta charset="UTF-8">
12<meta name="viewport" content="width=device-width, initial-scale=1.0">
13<title>Loading Animation</title>
14<style>
15 * { margin: 0; padding: 0; box-sizing: border-box; }
16
17 body {
18 background-color: #2e86b5;
19 display: flex;
20 justify-content: center;
21 align-items: center;
22 height: 100vh;
23 font-family: 'Segoe UI', Arial, sans-serif;
24 }
25
26 .loading-container {
27 display: flex;
28 align-items: center;
29 position: relative;
30 }
31
32 .tile {
33 background-color: #344a5e;
34 color: #ffffff;
35 font-size: 22px;
36 font-weight: 300;
37 letter-spacing: 2px;
38 width: 72px;
39 height: 72px;
40 display: flex;
41 align-items: center;
42 justify-content: center;
43 position: relative;
44 animation: tileWave 1.4s ease-in-out infinite;
45 }
46
47 .tile::after {
48 content: '';
49 position: absolute;
50 bottom: -10px;
51 left: 0;
52 width: 100%;
53 height: 8px;
54 background-color: rgba(180, 210, 230, 0.7);
55 animation: shadowWave 1.4s ease-in-out infinite;
56 }
57
58 @keyframes tileWave {
59 0%, 100% { transform: translateY(0); }
60 30% { transform: translateY(-20px); }
61 60% { transform: translateY(0); }
62 }
63
64 @keyframes shadowWave {
65 0%, 100% { transform: translateY(0); opacity: 0.7; }
66 30% { transform: translateY(-20px); opacity: 0.5; }
67 60% { transform: translateY(0); opacity: 0.7; }
68 }
69
70 .tile:nth-child(1) { animation-delay: 0s; }
71 .tile:nth-child(1)::after { animation-delay: 0s; }
72
73 .tile:nth-child(2) { animation-delay: 0.1s; }
74 .tile:nth-child(2)::after { animation-delay: 0.1s; }
75
76 .tile:nth-child(3) { animation-delay: 0.2s; }
77 .tile:nth-child(3)::after { animation-delay: 0.2s; }
78
79 .tile:nth-child(4) { animation-delay: 0.3s; }
80 .tile:nth-child(4)::after { animation-delay: 0.3s; }
81
82 .tile:nth-child(5) { animation-delay: 0.4s; }
83 .tile:nth-child(5)::after { animation-delay: 0.4s; }
84
85 .tile:nth-child(6) { animation-delay: 0.5s; }
86 .tile:nth-child(6)::after { animation-delay: 0.5s; }
87
88 .tile:nth-child(7) { animation-delay: 0.6s; }
89 .tile:nth-child(7)::after { animation-delay: 0.6s; }
90</style>
91</head>
92<body>
93 <div class="loading-container">
94 <div class="tile">L</div>
95 <div class="tile">O</div>
96 <div class="tile">A</div>
97 <div class="tile">D</div>
98 <div class="tile">I</div>
99 <div class="tile">N</div>
100 <div class="tile">G</div>
101 </div>
102</body>
103</html>