RadioCard

RadioCardは、ユーザーが複数の選択肢の中から1つを選択するために使用されるコンポーネントです。

使い方

import { RadioCard, RadioCardGroup } from "@yamada-ui/react"
<RadioCardGroup.Root>
  <RadioCardGroup.Item.Root>
    <RadioCardGroup.Item.Label />
    <RadioCardGroup.Item.Description />
    <RadioCardGroup.Item.Addon />
  </RadioCardGroup.Item.Root>
</RadioCardGroup.Root>

itemsを使う

バリアントを変更する

サイズを変更する

カラースキームを変更する

デフォルトの値を設定する

デフォルトの値を設定する場合は、defaultValueに値を設定します。

方向を変更する

方向を変更する場合は、orientation"horizontal"または"vertical"を設定します。デフォルトでは、"horizontal"が設定されています。

形を変更する

配置を変更する

配置を変更する場合は、justify"start"または"end"などを設定します。デフォルトでは、"start"が設定されています。

アドオンを追加する

アドオンを追加する場合は、addonReactNodeを設定します。

インジケーターを非表示にする

インジケーターを非表示にする場合は、withIndicatorfalseに設定します。

無効にする

無効にする場合は、disabledtrueに設定します。

読み取り専用にする

読み取り専用にする場合は、readOnlytrueに設定します。

無効な入力にする

無効な入力にする場合は、invalidtrueに設定します。

ボーダーの色を変更する

ボーダーの色を変更する場合は、focusBorderColorまたはerrorBorderColorに値を設定します。

制御する

Props

アクセシビリティ

RadioCardは、アクセシビリティに関してWAI-ARIA - Radio Patternに従います。

Field.Rootを使用しない場合は、RadioCardGroup.Rootaria-labelまたはaria-labelledbyを設定します。

const items = useMemo<RadioCardGroup.ItemType[]>(
  () => [
    { label: "ビアンカ", value: "1" },
    { label: "フローラ", value: "2" },
    { label: "ルドマン", value: "3" },
  ],
  [],
)

return <RadioCardGroup.Root aria-label="キャラクター" items={items} />
const items = useMemo<RadioCardGroup.ItemType[]>(
  () => [
    { label: "ビアンカ", value: "1" },
    { label: "フローラ", value: "2" },
    { label: "ルドマン", value: "3" },
  ],
  [],
)

return (
  <VStack gap="sm">
    <Text as="h3" id="label">
      キャラクター
    </Text>

    <RadioCardGroup.Root aria-labelledby="label" items={items} />
  </VStack>
)

キーボード操作

キー説明状態
Tabラジオグループ内のチェックされたラジオボタンをフォーカスします。ラジオボタンがチェックされていない場合は、最初のラジオボタンをフォーカスします。-
Spaceフォーカスされたラジオボタンをチェックします。-
ArrowLeft無効ではない前のラジオボタンをチェックします。-
ArrowRight無効ではない次のラジオボタンをチェックします。-
ArrowUp無効ではない前のラジオボタンをチェックします。-
ArrowDown無効ではない次のラジオボタンをチェックします。-

ARIAロールと属性

コンポーネントロールと属性使い方
RadioCardGroup.Rootrole="radiogroup"ラジオグループであることを示します。
aria-labelledbyRadioCardGroup.RootField.Root内にあり、Field.RootlabelまたはField.Labelが設定されている場合は、そのidを設定します。
aria-describedbyRadioCardGroup.RootField.Root内にあり、Field.RooterrorMessageまたはhelperMessage、もしくはField.ErrorMessageまたはField.HelperMessageが設定されている場合は、そのidを設定します。
RadioCard.Root, RadioCardGroup.Item.Rootaria-checkedラジオボタンがチェックされている場合は"true"を設定し、チェックされていない場合は"false"を設定します。
aria-describedbyRadioCard.RootまたはRadioCardGroup.Item.RootField.Root内にあり、Field.RooterrorMessageまたはhelperMessage、もしくはField.ErrorMessageまたはField.HelperMessageが設定されている場合は、そのidを設定します。
aria-disableddisabledまたはreadOnlyが設定されている場合は"true"を設定します。
aria-invalidinvalidが設定されている場合は"true"を設定します。
aria-requiredrequiredが設定されている場合は"true"を設定します。
RadioIndicatoraria-hidden要素をアクセシビリティツリーから除外します。