reveal · 入场动效
给内容挂一个 data-reveal 属性,它就会在进入视口时从指定方向就位。
六个方向共用一套 transform,位移上限 8px、时长只用令牌、错峰 40ms 封顶 6 个。
本页加载时是静态的:点下面按钮才由引擎接管 —— 这样截图基线可复现,
也说明"没有 JS 时内容照常可见"。
引擎未接管(内容全可见)
六个方向
up · 从下往上 8px
down · 从上往下 8px
left · 从左往右 8px
right · 从右往左 8px
scale · .97 放大到位
none · 只淡入
分批(不用逐个标)
容器写 data-reveal-children="up",子元素自动依次入场。
间隔 40ms,超过第 6 个之后同时开始 —— 否则第 20 个要等 800ms。
第 1 项
第 2 项
第 3 项
第 4 项
第 5 项
第 6 项
第 7 项(已封顶,与第 6 项同时)
第 8 项(同上)
单独延迟
延迟 120ms
延迟 240ms
怎么接到自己的页面
两种接法,二选一:
① 在 <html> 上写 data-reveal-auto,脚本加载后自动接管;
② 手动调 Reveal.enable()(本页就是这种,方便截图与演示)。
都不写 ⇒ 完全不接管:内容可见、位置不偏。这是刻意的默认值。
对比:错写法 vs 本库写法
❌ 常见写法:藏了但没兜底
内容真被 opacity: 0 藏着,而脚本没跑起来(被拦、报错、CSP)—— 这一块就永远是空的,读者不知道这里有东西。
✅ 本库:只有 data-reveal-ready 时才藏
隐藏只在 <html data-reveal-ready> 存在时生效:任何一步失败,内容就是全可见的。动画可以有代价,但代价不能是"看不见内容"。