For AI agents: the complete documentation index is available at https://a3s-lab.github.io/UI/v0.1.0/llms.txt, the full documentation bundle is available at https://a3s-lab.github.io/UI/v0.1.0/llms-full.txt, and this page is available as Markdown at https://a3s-lab.github.io/UI/v0.1.0/components/dropdown-menu.md.
  • 简体中文
  • v0.1.0
  • 下拉菜单

    Live previewHTML · CSS · JavaScript

    用途

    A3S UI 下拉菜单相对于 .dropdown-menu 包装器内联定位。这与 shadcn/ui 的门户 Base UI 实现不同,但保持标记无依赖,并与 A3S UI 的当前弹出框/选择定位模型相匹配。

    Include CSS

    导入 Tailwind 和一个完整的 A3S UI 样式包。

    @import "tailwindcss";
    @import "@a3s-lab/ui/a3s.css";

    或者只导入基本CSS、下拉菜单组件CSS和一个样式包。

    @import "tailwindcss";
    @import "@a3s-lab/ui/base.css";
    @import "@a3s-lab/ui/components/dropdown-menu.css";
    @import "@a3s-lab/ui/styles/a3s.css";

    使用CDN或批量程序导入?请参见安装页

    Include JavaScript

    复制或提供完整的 A3S UI JavaScript 包。

    <script src="/assets/js/all.min.js" defer></script>

    或者复制或提供 A3S UI 运行时和下拉菜单脚本。

    <script src="/assets/js/runtime.min.js" defer></script>
    <script src="/assets/js/dropdown-menu.min.js" defer></script>

    使用CDN或批量程序导入?请参见安装页

    Add your dropdown menu HTML

    <div id="demo-dropdown-menu" class="dropdown-menu">
      <button type="button" id="demo-dropdown-menu-trigger" aria-haspopup="menu" aria-controls="demo-dropdown-menu-menu" aria-expanded="false" class="btn" data-variant="outline">Open</button>
      <div id="demo-dropdown-menu-popover" data-popover aria-hidden="true" class="w-40">
        <div role="menu" id="demo-dropdown-menu-menu" aria-labelledby="demo-dropdown-menu-trigger">
          <div role="group" aria-labelledby="demo-dropdown-account">
            <div role="heading" id="demo-dropdown-account">My Account</div>
            <div role="menuitem">
              <span>Profile</span>
              <kbd>⇧⌘P</kbd>
            </div>
            <div role="menuitem">
              <span>Billing</span>
              <kbd>⌘B</kbd>
            </div>
            <div role="menuitem">
              <span>Settings</span>
              <kbd>⌘S</kbd>
            </div>
          </div>
          <hr role="separator" />
          <div role="group">
            <div role="menuitem">Team</div>
            <div role="menuitem">
              <span>New Team</span>
              <kbd>⌘+T</kbd>
            </div>
          </div>
          <hr role="separator" />
          <div role="group">
            <div role="menuitem">GitHub</div>
            <div role="menuitem">Support</div>
            <div role="menuitem" aria-disabled="true">API</div>
          </div>
          <hr role="separator" />
          <div role="group">
            <div role="menuitem">
              <span>Log out</span>
              <kbd>⇧⌘Q</kbd>
            </div>
          </div>
        </div>
      </div>
    </div>

    HTML 结构

    <div class="dropdown-menu">

    Relative wrapper for the trigger and inline menu content.

    <button aria-haspopup="menu" aria-expanded="false">
    Trigger button. The script toggles aria-expanded and manages keyboard navigation.
    <div data-popover aria-hidden="true">

    Menu content popover. Set data-side="top|right|bottom|left|inline-start|inline-end" and data-align="start|center|end" to control placement.

    <div role="menu">

    Container for menu items, groups, labels, and separators.

    <div role="group" aria-labelledby="{ HEADING_ID }"> Optional
    Groups related menu items.
    <div role="heading" id="{ HEADING_ID }"> Optional
    Group heading/label.
    <div role="menuitem">
    Standard action item. Use aria-disabled="true" for disabled items.
    <div role="menuitemcheckbox" aria-checked="true">
    Checkbox-style item. Add a child with data-indicator for the checked icon.
    <div role="menuitemradio" aria-checked="true">
    Radio-style item. Add a child with data-indicator for the selected icon.
    <kbd> Optional
    Shortcut hint aligned to the inline end of the item.
    <hr role="separator"> Optional
    Separator between groups or options.

    JavaScript API

    应用程序编程接口类型描述
    dropdown.open()方法打开菜单。
    dropdown.close()方法关闭菜单。
    dropdown.toggle()方法切换菜单。
    dropdown.refresh()方法在现有 role="menu" 元素内的子项发生更改后重新扫描菜单项。

    示例

    基本

    Live previewHTML · CSS · JavaScript

    快捷键

    Live previewHTML · CSS · JavaScript

    图标

    Live previewHTML · CSS · JavaScript

    复选框

    Live previewHTML · CSS · JavaScript

    复选框图标

    Live previewHTML · CSS · JavaScript

    无线电组

    Live previewHTML · CSS · JavaScript

    无线电图标

    Live previewHTML · CSS · JavaScript

    破坏性

    Live previewHTML · CSS · JavaScript

    头像

    Live previewHTML · CSS · JavaScript

    RTL

    下拉菜单支持文档方向。在下拉根或父元素上设置 dir="rtl"。尽可能使用逻辑对齐数据属性。

    Live previewHTML · CSS · JavaScript