diff --git a/index.html b/index.html index 14d9d7b..b6e28fb 100644 --- a/index.html +++ b/index.html @@ -36,7 +36,7 @@
view timeline이 지원되는 브라우저에서는 카드가 viewport 진입률에 맞춰 또렷해집니다.
sticky 배치와 scroll snap이 JavaScript 없는 화면 전환 리듬을 만듭니다.
중앙 maintainer bot이 다음 장면, 접근성, fallback 개선을 작은 PR로 제안합니다.
scroll-driven animation이 꺼져도 장면 순서와 문장이 그대로 남아 여정을 끝까지 읽을 수 diff --git a/styles.css b/styles.css index bdca214..9edb1c3 100644 --- a/styles.css +++ b/styles.css @@ -77,7 +77,9 @@ .chapter { min-height: 100vh; + min-block-size: 100svh; scroll-snap-align: start; + scroll-snap-stop: always; position: relative; display: grid; place-items: center; @@ -163,6 +165,7 @@ .scene-a { --scene-accent: 0 127 140; --scene-glow-position: 28% 24%; + --scene-progress: 25%; } .scene::before { @@ -179,6 +182,7 @@ --scene-glow-position: 72% 22%; --scene-sweep-stop: 52%; --scene-bg: #fbfaff; + --scene-progress: 50%; } .scene-c { @@ -188,6 +192,7 @@ --scene-sweep-alpha: 8%; --scene-sweep-stop: 50%; --scene-bg: #fffdf7; + --scene-progress: 75%; } .scene-d { @@ -197,6 +202,7 @@ --scene-sweep-alpha: 8%; --scene-sweep-stop: 54%; --scene-bg: #f8fff9; + --scene-progress: 100%; } .scene-card { @@ -214,12 +220,29 @@ backdrop-filter: blur(16px); } - .scene-card::before { + .scene-card::before, + .scene-card::after { content: ''; position: absolute; - inset: 0 0 auto; + top: 0; + left: 0; height: 6px; - background: linear-gradient(90deg, rgb(var(--scene-accent) / 86%), transparent 72%); + pointer-events: none; + } + + .scene-card::before { + right: 0; + background: rgb(var(--scene-accent) / 13%); + } + + .scene-card::after { + width: var(--scene-progress); + background: linear-gradient( + 90deg, + rgb(var(--scene-accent) / 92%), + rgb(var(--scene-accent) / 54%) + ); + box-shadow: 0 10px 28px rgb(var(--scene-accent) / 18%); } .scene-card span {