Skip to content
fandhe-frontendcore v0.4.3
GitHub

Steps

fandhe-frontend-pre-styled-ui の steps mod が提供するスタイル済み Steps 部品です。

複数ステップの進行状況を示すナビゲーション部品です。trigger は現在ステップに aria-current="step" を、separator は role="separator" を固定付与します。パンくずリストによる階層表示には Breadcrumb を検討してください。

関連 API: fandhe-frontend-pre-styled-ui API / fandhe-frontend-headless-ui API

Demo

count(全 step 数)+ step(現在位置)を持つ headless Steps の静的掲示。item は complete/current/incomplete の 3 状態を持ち、current な item の trigger のみ aria-current="step" を持ちます(クリック挙動は wasm 層のスコープ外)。orientation(横向き/縦向き)は root の data-orientation 属性により list/content の並び方向が切り替わります。

配送先住所を入力してください。
配送先住所を入力してください。

Features

  • trigger は現在ステップに aria-current="step" を固定付与する(crates/pre-styled-ui/src/steps.rs テスト list_item_trigger_indicator_separator_delegate_to_headless、行 1256)
  • separator は role="separator" を持つ(steps.rs テスト同上、行 1258)
  • indicator の data-state(current/complete)で見た目を切り替える(steps.rs:1134-1142)
  • StepsVariant(Circle 既定/Bar/Panel/Dot)の root_with/list_with/item_with/indicator_with/separator_with で見た目を切り替える(イシュー #3139、steps.rs)

Anatomy

root
  list
    item
      trigger
        indicator
      separator
  body
    content
    prev-trigger
    next-trigger

API Reference

Arguments

NameTypeDefaultDescription
variantStepsVariantCircle*_with 系関数が受け取る見た目軸。Circle は既存 root/list/... とバイト一致、Bar/Panel/Dot は該当 slot へ単独クラスを追加する(イシュー #3139)。

Data Attributes

PartAttributeObserved Values
contentdata-orientationhorizontal, vertical
contentdata-stateopen
indicatordata-complete(値なし)
indicatordata-current(値なし)
indicatordata-incomplete(値なし)
indicatordata-statecomplete, current, incomplete
itemdata-complete(値なし)
itemdata-current(値なし)
itemdata-incomplete(値なし)
itemdata-orientationhorizontal, vertical
itemdata-statecomplete, current, incomplete
listdata-orientationhorizontal, vertical
rootdata-orientationhorizontal, vertical
separatordata-complete(値なし)
separatordata-current(値なし)
separatordata-orientationhorizontal, vertical
separatordata-statecomplete, current
triggerdata-complete(値なし)
triggerdata-current(値なし)
triggerdata-incomplete(値なし)
triggerdata-orientationhorizontal, vertical
triggerdata-statecomplete, current, incomplete

CSS Variables

VariableDefault
--fandhe-steps-bar-colorvar(--fandhe-color-border)
--fandhe-steps-connector-min-height2.5rem
--fandhe-steps-font-sizevar(--fandhe-font-font-size-sm)
--fandhe-steps-indicator-font-sizevar(--fandhe-font-font-size-sm)
--fandhe-steps-indicator-size2rem
--fandhe-steps-thickness2px

Examples

3 steps, step 2 current

3 ステップ中 2 番目が current の状態を固定表示する例です。

Bar variant

indicator を持たず item 上端の太線で進捗を表すバー型の例です。

Panel variant

枠付き等幅パネルにステップを並べ、シェブロンで区切るパネル型の例です。

Dot variant

ドット列と「n/m」進捗テキストを横に並べるドット型の例です。

2/3

Accessibility

WAI-ARIA

AttributeDescription
aria-current="step"(trigger) / role="separator"(separator)現在ステップと区切りの意味論(steps.rs テスト list_item_trigger_indicator_separator_delegate_to_headless、行 1256, 1258)。