




本文详解如何通过 clip-path 结合 transform 实现标题分层滑动动画:上层文字水平平移,下层文字同步偏移指定像素,营造富有层次感的 web3 风格动态标题效果。
要实现类似 示意图 中“DISCOVER WEB 3 DIMENSIONS”的错位滑动效果(例如主标题横向微移,副标题(如 WEB 3)向下偏移并伴随独立水平位移),关键不在于单纯移动整个
以下是一个专业、可复用的实现方案:
DISCOVER
WEB 3
DIMENSIONS
.title-container { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; color: #000; font-family: 'Arial', sans-serif; } .title-main, .title-sub, .title-suffix { margin: 0; font-size: 4.5rem; font-weight: 900; text-transform: uppercase; letter-spacing: 4px; transition: transform 0.4s ease, clip-path 0.4s ease; } /* 主标题:仅水平滑动 */ .title-main { clip-path: inset(0 0 0 0); /* 全显示 */ } /* “WEB 3”:底部预留空间 + 水平+垂直位移 */ .title-sub { clip-path: inset(0 0 32px 0); /* 隐藏底部32px,为位移留白 */ position: relative; top: -16px; /* 微调垂直对齐 */ } /* 后缀标题:保持静态,强化对比 */ .title-suffix { clip-path: inset(0 0 0 0); opacity: 0.85; } /* 悬停/激活状态:触发错位动画 */ .title-container:hover .title-main { transform: translateX(8px); } .title-container:hover .title-sub { transform: translate(12px, 24px); /* X方向+12px,Y方向+24px(即向下偏移) */ } .title-container:hover .title-suffix { transform: translateX(-5px); } /* 响应式优化 */ @media (max-width: 768px) { .title-main, .title-sub, .title-suffix { font-size: 2.8rem; } .title-container:hover .title-sub { transform: translate(6px, 16px); } }
该方案摒弃了生硬的 margin-left 或 left 位移,转而利用 clip-path 创造视觉“裁切锚点”,再通过 transform 实现精准、流畅的分层滑动。它不仅满足设计图效果,还具备良好的可维护性、响应式扩展性与现代浏览器兼容性——是构建品牌化动态标题的高效实践路径。