Marquee
連続表示のため項目を視覚的に複製しますが、2つ目は aria-hidden で支援技術から除外します。Pause/Resume で停止でき、prefers-reduced-motion では自動的にアニメーションを止めます。
@neumorphism-ui/marqueeプレビュー
アクセシビリティBase UIReact 19Tailwind 4
インストール
インストール: marquee
npx shadcn@latest add @neumorphism-ui/marqueeCLI が npm 依存関係、base token、utils、コンポーネントソースを順番に処理します。
この Registry を初めて使う場合は、先に namespace の設定 を完了してください。
使い方
Import
Marquee の import コード
"use client";
import { Marquee } from "@/components/ui/marquee";Example
Marquee の使用コード
export default function Example() {
return <Marquee items={["アクセシビリティ", "Base UI", "React 19", "Tailwind 4"]} label="対応技術" pauseLabel="アニメーションを一時停止" resumeLabel="アニメーションを再開" />;
}API リファレンス
| コンポーネント | プロパティ | 型 | デフォルト | 説明 |
|---|---|---|---|---|
Marquee | items必須 | readonly ReactNode[] | — | 繰り返し表示する項目一覧です。 |
Marquee | duration | number | 24 | 1周期の秒数を指定します。 |
Marquee | defaultPaused | boolean | false | 最初から停止状態で開始します。 |
Marquee | label | string | "Scrolling content" | 繰り返し情報領域のアクセシブル名です。 |
Marquee | pauseLabel / resumeLabel | string | — | 動作制御ボタンのアクセシブル名をローカライズします。 |
アクセシビリティ
- 01
2つ目の視覚的コピーは aria-hidden にして同じ項目を二重に読み上げないようにします。
- 02
利用者が操作できる一時停止ボタンを常に提供し、状態を aria-pressed で公開します。
- 03
prefers-reduced-motion では移動をなくし、最初の項目集合だけを表示します。