61 lines
4.0 KiB
HTML
61 lines
4.0 KiB
HTML
<!doctype html>
|
|
<html><head><meta charset="UTF-8"/>
|
|
<script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
|
|
<style>
|
|
body{margin:0;background:#0c1310;color:#f3ecd8;font-family:Georgia,serif}
|
|
#root{position:relative;width:1920px;height:1080px;overflow:hidden}
|
|
.clip{position:absolute;inset:0;display:grid;place-items:center}
|
|
.bg{position:absolute;inset:0;background-size:cover;background-position:center}
|
|
.veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,14,10,.25) 0%,rgba(8,14,10,.82) 100%)}
|
|
.kicker{font-family:'Courier New',monospace;letter-spacing:.28em;font-size:34px;color:#c9b987;opacity:0}
|
|
h1{font-weight:400;font-size:118px;line-height:1.08;max-width:1500px;text-align:center;opacity:0}
|
|
.foot{position:absolute;bottom:74px;width:100%;text-align:center;font-family:'Courier New',monospace;letter-spacing:.2em;font-size:30px;color:#c9b987;opacity:0}
|
|
</style></head>
|
|
<body>
|
|
<div id="root" data-composition-id="main" data-start="0" data-width="1920" data-height="1080" data-duration="40">
|
|
<section id="s1" class="clip" data-start="0" data-duration="9" data-track-index="1">
|
|
<div class="bg" style="background-image:url('https://images.pexels.com/photos/19863995/pexels-photo-19863995.jpeg?auto=compress&cs=tinysrgb&w=1200')"></div>
|
|
<div class="veil"></div>
|
|
<div style="position:relative;z-index:2;max-width:1500px">
|
|
<div class="kicker" id="s1-kick">BARBARA BATEY · 38 YEARS · ONE PACE</div>
|
|
<h1 id="s1-title">For thirty-eight years I taught children to read. Then I walked.</h1>
|
|
</div>
|
|
</section>
|
|
|
|
<section id="s2" class="clip" data-start="9" data-duration="11" data-track-index="1">
|
|
<div class="bg" style="background-image:url('https://images.pexels.com/photos/3250132/pexels-photo-3250132.jpeg?auto=compress&cs=tinysrgb&w=1200')"></div>
|
|
<div class="veil"></div>
|
|
<h1 id="s2-title">We walk until the path breathes. Only then do we sit and read a paragraph — out loud, together.</h1>
|
|
</section>
|
|
|
|
<section id="s3" class="clip" data-start="20" data-duration="10" data-track-index="1">
|
|
<div class="bg" style="background-image:url('https://images.pexels.com/photos/19617016/pexels-photo-19617016.jpeg?auto=compress&cs=tinysrgb&w=1200')"></div>
|
|
<div class="veil"></div>
|
|
<h1 id="s3-title">A line about rivers lands differently when you can hear one. The book and the trail keep each other honest.</h1>
|
|
</section>
|
|
|
|
<section id="s4" class="clip" data-start="30" data-duration="10" data-track-index="1">
|
|
<div class="bg" style="background-image:url('https://images.pexels.com/photos/1868068/pexels-photo-1868068.jpeg?auto=compress&cs=tinysrgb&w=1200')"></div>
|
|
<div class="veil"></div>
|
|
<h1 id="s4-title">At our age the body sets the pace, but the mind keeps its own — and it is never too late to turn the page.</h1>
|
|
<div class="foot" id="s4-foot">THE TRAIL PAGE — A SHORT BY BARBARA BATEY</div>
|
|
</section>
|
|
|
|
<audio id="voice-s1" src="audio/s1.wav" data-start="0"></audio>
|
|
<audio id="voice-s2" src="audio/s2.wav" data-start="9"></audio>
|
|
<audio id="voice-s3" src="audio/s3.wav" data-start="20"></audio>
|
|
<audio id="voice-s4" src="audio/s4.wav" data-start="30"></audio>
|
|
<audio id="bgm" src="audio/music.mp3" data-start="0" data-volume="0.13"></audio>
|
|
</div>
|
|
<script>
|
|
window.__timelines = window.__timelines || {};
|
|
const tl = gsap.timeline({ paused: true });
|
|
tl.to("#s1-kick", { opacity: 1, duration: 0.9, ease: "power2.out" }, 0.4);
|
|
tl.to("#s1-title", { opacity: 1, y: 0, duration: 0.9, ease: "power2.out" }, 1.1);
|
|
tl.to("#s2-title", { opacity: 1, y: 0, duration: 0.9, ease: "power2.out" }, 9.6);
|
|
tl.to("#s3-title", { opacity: 1, y: 0, duration: 0.9, ease: "power2.out" }, 20.6);
|
|
tl.to("#s4-title", { opacity: 1, y: 0, duration: 0.9, ease: "power2.out" }, 30.6);
|
|
tl.to("#s4-foot", { opacity: 1, duration: 1.4, ease: "power1.in" }, 36.2);
|
|
window.__timelines["main"] = tl;
|
|
</script>
|
|
</body></html> |