빌드 애니메이션

Build Animation

슬라이드 안의 요소를 한 번에 다 보여주지 않고, 말하는 순서에 맞춰 하나씩 등장시키는 애니메이션 기법입니다.

다른 이름: PowerPoint buildAnimate inEntrance animation (slides)
···
html
<div class="slide">
  <span class="tag" id="tag"></span>
  <div class="items">
    <div class="item" id="i0"><span class="dot"></span><span id="t0"></span></div>
    <div class="item" id="i1"><span class="dot"></span><span id="t1"></span></div>
    <div class="item" id="i2"><span class="dot"></span><span id="t2"></span></div>
  </div>
</div>
css
.slide{position:absolute;inset:6%;border-radius:clamp(6px,1.6vmin,14px);background:var(--surface);border:1px solid var(--line);padding:9vmin 10vmin;display:flex;flex-direction:column;justify-content:center}
.tag{position:absolute;top:4%;left:4%;font:700 clamp(9px,2.2vmin,12px)/1 monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.items{display:flex;flex-direction:column;gap:clamp(8px,2.4vmin,16px)}
.item{display:flex;align-items:center;gap:clamp(6px,1.6vmin,10px);opacity:0;transform:translateY(10px);transition:opacity .45s ease,transform .45s ease}
.item.show{opacity:1;transform:translateY(0)}
.dot{width:clamp(7px,1.8vmin,11px);aspect-ratio:1;border-radius:50%;background:var(--accent-3);flex:none}
.item span:last-child{font:650 clamp(11px,2.8vmin,15px)/1.3 -apple-system,sans-serif;color:var(--fg)}
js
const el = (id) => document.getElementById(id);
const items = [el('i0'), el('i1'), el('i2')];
const L = {
  ko: { tag: '빌드 재생 중', t: ['문제를 정의한다', '해결책을 제시한다', '다음 단계를 제안한다'] },
  en: { tag: 'Build playing', t: ['Define the problem', 'Present the solution', 'Propose next steps'] },
};
let lang = 'ko';
function paintText() {
  const t = L[lang];
  el('tag').textContent = t.tag;
  t.t.forEach((v, i) => { document.getElementById('t' + i).textContent = v; });
}
function showN(k) { items.forEach((it, idx) => it.classList.toggle('show', idx < k)); }
function loop() {
  paintText();
  showN(1);
  setTimeout(() => showN(2), 700);
  setTimeout(() => showN(3), 1400);
  setTimeout(() => { lang = lang === 'ko' ? 'en' : 'ko'; }, 3300);
  setTimeout(() => showN(0), 3400);
  setTimeout(loop, 3600);
}
loop();

빌드는 파워포인트·키노트의 "애니메이트" 기능으로, 불릿·이미지·도형이 클릭이나 자동 타이밍에 맞춰 순서대로 나타나게 한다. 청중이 다음 줄을 미리 읽어버려 발표자의 말과 어긋나는 문제를 막아준다.

데모는 세 문장을 빌드로 보여준다 — 각 줄이 아래에서 살짝 밀려 올라오며 페이드인한다. 전부 한 번에 뜨는 버전과 비교하면, 빌드는 발표자가 지금 어느 문장을 말하고 있는지 시각적으로 알려준다.

체크리스트: 등장 방향과 속도를 슬라이드 전체에서 통일했는가, 화려한 회전 효과 대신 페이드와 살짝 이동 정도로 절제했는가, 발표자가 다음 줄로 넘어가는 타이밍과 애니메이션이 맞는가.

언제 쓰나

한 슬라이드에 여러 논점을 순서대로 설명할 때만 씁니다. 모든 슬라이드에 빌드를 쓰면 오히려 늘어져 보입니다.