Dropdown Menu

A panel of actions opens with grouping separators and a slide-in

All platformsMotion & BackgroundsContent areaEffect

Live preview (drag the parameters, watch it change)

Code

<div class="wrap" id="w"><button onclick="document.getElementById('w').classList.toggle('open')">文件操作 ▾</button>
<div class="menu"><div class="mi">重命名</div><div class="mi">复制一份</div><div class="sep"></div><div class="mi">导出为图片</div></div></div>
<style>
.wrap { position: relative; display: inline-block; }
.menu { position: absolute; left: 50%; top: calc(100% + 8px); transform: translateX(-50%) translateY(5px);
  background: #fff; border: 1px solid #E3E0D8; border-radius: 12px; box-shadow: 0 14px 32px rgba(20,20,20,.12);
  padding: 5px; width: 180px; opacity: 0; pointer-events: none; transition: all .2s cubic-bezier(.22,1,.36,1); }
.wrap.open .menu { opacity: 1; pointer-events: auto; transform: translateX(-50%) translateY(0); }
.mi { padding: 8px 11px; border-radius: 8px; cursor: pointer; } .mi:hover { background: #F1EEE8; }
.sep { height: 1px; background: #E3E0D8; margin: 5px 4px; }
</style>

Code snippets are MIT-licensed — copy and adapt freely.

How this effect works

它是怎么工作的(中文)

触发按钮 + 绝对定位的菜单面板,打开时从 opacity 0 + 下移 5px 过渡进来。菜单项 hover 给浅底色,组与组之间用 1px 分隔线。生产代码要处理:点外部关闭、Esc 关闭、方向键导航、焦点回收——手写很容易漏,建议用 Radix 这类无样式原语打底。

How it works (English)

A trigger button plus an absolutely-positioned panel that transitions from opacity 0 + 5px down. Items get a soft hover background; groups split with a 1px separator. Production menus must handle outside-click close, Esc, arrow-key navigation, and focus return — easy to miss by hand, so build on an unstyled primitive like Radix.

参考与来源 Sources

本条为「批次 1(重建)」成果(2026-11-10 用户决定:原 妞妞老师 素材不导出,改由公开材料重建):效果概念参考开源效果生态——Magic UI(MIT)、Uiverse(MIT)、Animista、Paper Shaders(Apache-2.0)、tsParticles(MIT)、CSS Loaders(MIT)等(见 /resources 对应条目,许可以各项目为准);本站的实现代码、参数体系与全部文案均为 Aglaia 原创,未复制上述项目的代码或文案,也与 妞妞老师 原始素材无关。

Matching prompt

Dropdown Menu PromptStale · →