安全下载,经人工审核 精选优质前端模板 支持定制开发咨询 持续更新资源
CSS position-anchor菜单指示器跟随手指动画源码下载
编号:菜单指示器

CSS position-anchor菜单指示器跟随手指动画源码下载

大小 14 KB
总文件 6 个
发布 2026-09-04
更新 2026-09-04
架构 CSS
分类 前端资源 - CSS动画
目录 结构详情
童哲网
童哲网
 ·  专注前端模板资源分享
人工审核 安全可信

这是一款用 CSS Anchor Positioning API 做的菜单指示器特效:六项磨砂玻璃质感的菜单卡片竖排,右侧有一枚指向左方向的手指 emoji,鼠标悬停到哪一项,手指就会平滑滑到那一项的右侧并对齐中心。整段没有一行 JS——`anchor-name` 把当前 hover 的菜单项声明为锚点、`position-anchor` 让手指跟随该锚点、`top: anchor(center)` 和 `left: anchor(right)` 决定跟随的锚点位置。是全新 CSS Anchor API 的极简教学范例,也是任何侧边导航都能拿来即用的一段亮眼交互。

这款 anchor 菜单的四个亮点

  • 核心只有三行 CSS:`.item:hover { anchor-name: --item-hovered; }`、`.follower { position-anchor: --item-hovered; top: anchor(center); left: anchor(right); }`——浏览器原生完成锚点跟随,无需任何脚本或 ResizeObserver。

  • 初始状态用 `.item:first-child { anchor-name: --item-hovered; }` 提供默认锚点,页面加载时手指就锚在第一项,避免出现空位。

  • 菜单卡片带磨砂玻璃质感:`backdrop-filter: blur(1px)`、`background-color: #fff3`、`box-shadow: 2px 2px 5px #0002` 三件套,配合悬停时 `scale(1.03)` 微微凸起,交互反馈自然。

  • 背景是径向渐变的水滴纹理 + 45° 斜蓝粉渐变叠加,配合 Aboreto 衬线字体,整体像一张手工水彩海报。

CSS Anchor Positioning 的三个门道

其一,`anchor-name` 是「谁被跟随」,`position-anchor` 是「谁去跟」,两者是解耦的——同一个 anchor-name 可以被多个 position-anchor 引用;本模板巧妙地在 hover 时动态给菜单项贴 anchor-name,实现「跟随当前 hover」。其二,`top: anchor(center)` 里的 `center` 是 anchor 边界的中点位置,不是 anchor 元素中心的绝对坐标——所以 `.follower` 上还需要 `transform: translateY(-50%)` 才能视觉居中。其三,Anchor API 是 CSS 层动画,帧率稳定,比 JS 每帧改 top/left 或 transform 更省 CPU,视觉更流畅。源码中均有注释可以参考完整实现。

换成自己的菜单要动哪里

菜单项在 `.wrapper` 内的六个 `.item`,改文字即可;数量任意增减不影响 anchor 逻辑。要换指示器图标,把 `.follower` 内容从 👈 换成任意 emoji 或 ``。要指示器从左侧跟随,改 `.follower` 的 `left: anchor(right)` 为 `right: anchor(left)`,同时调整位移方向。要改高亮色,`.item.active` 或者 `.item:hover` 里的 `background-color` 换成品牌色即可。字体从 Aboreto 换到系统字体,`font-family` 改为 `system-ui` 或加中文回退 "PingFang SC", "Microsoft YaHei"。

浏览器兼容性:CSS Anchor Positioning API 需 Chrome 125+、Edge 125+;Safari 与 Firefox 尚未完全支持,会显示为手指停在初始位置的降级状态,功能不破坏。详细运行方法请参见压缩包内的帮助文档。

常见问题

Safari/Firefox 用户看到的是什么

手指停在第一项右侧不动,菜单本身仍可正常点击/悬停。整体功能没有破坏,只是缺一段动画。可选:给这些浏览器写 JS 兜底跟随,本源码没有包含以保持极简。

能给菜单加点击态而不只是 hover 吗

能。给 `.item.active` 也加 `anchor-name: --item-hovered`,JS 里点击时切换 active 类即可;hover 与 click 可以共存。

指示器能跟着当前项左侧或者上方吗

能。改 `.follower` 的 `left`/`top` 使用不同的 `anchor()` 关键字(`start`、`center`、`end`、`self-start` 等),几乎所有相对锚点位置都能表达。

菜单文字太长会溢出吗

不会溢出容器,但会自动换行。可以给 `.item` 加 `white-space: nowrap` 强制单行,或 `text-overflow: ellipsis` 截断。

适合放在哪些页面

适合官网侧边导航、SaaS 后台的一级菜单、博客栏目切换、活动楼层导航、任何「视觉指示器需要跟随当前项」的场景。下载源码后可作为独立模块嵌入任何 HTML 页面。

模板目录结构

    最新资源

    现代农业 HTML 建站模板,有机种植与农产品出口响应式网页模板

    沃素

    现代农业 HTML 建站模板,有机种植与农产品出口响应式网页模板
    货运物流行业专用 Bootstrap 建站模板,国际货代仓储运输响应式网页模板

    络捷

    货运物流行业专用 Bootstrap 建站模板,国际货代仓储运输响应式网页模板
    滚动圆形遮罩切屏特效,GSAP 驱动的整屏图片揭示动画

    滚动揭示效果

    滚动圆形遮罩切屏特效,GSAP 驱动的整屏图片揭示动画
    叠楼 HTML 小游戏,对准落点越准楼层越高的 Canvas 堆塔玩法

    盖楼小游戏

    叠楼 HTML 小游戏,对准落点越准楼层越高的 Canvas 堆塔玩法
    新拟态JS音乐播放器,凹凸按钮与可拖动进度条的播放组件

    拟物播放器

    新拟态JS音乐播放器,凹凸按钮与可拖动进度条的播放组件
    鼠标感应摆动树特效,随指针推开并回弹的 Canvas 粒子树

    低多边形树

    鼠标感应摆动树特效,随指针推开并回弹的 Canvas 粒子树