本文へ移動
uiify

Select

ネイティブのselect要素のラッパー。

ブラウザー
Chrome 135+Firefox 121+
このバージョンの理由

Firefox keeps the native select control. This custom styling uses ::picker(select), :open, and option::checkmark, which Firefox does not support yet.

Safari 17+
このバージョンの理由

Safari keeps the native select control. This custom styling uses ::picker(select), :open, and option::checkmark, which Safari does not support yet.

ティア
0
圧縮後のサイズ
480 B
強制レイアウトの上限
0 ms
axe の上限
0
SSR 対応
はい
公開された契約
テストハーネス

プレイグラウンド

Select

標準

グループ化

ペット

区切りあり

長い値

API

Select.Root

Prop型既定値説明
childrenReactNode—Selectのパーツ。通常は項目とグループを含むSelect.Contentです。
valuestring—セレクトを制御する選択値。
defaultValuestring—初回レンダリング時の選択値。その後はネイティブのselectが選択を管理するため、JavaScriptなしで動作します。
onValueChange(value: string) => void—選択が変わると、新しい値で呼び出します。
namestring—選択値とともに送信するフォームフィールド名。
disabledbooleanfalseネイティブのselectを無効にし、data-disabled属性を設定します。
renderReactElement | ((props, state) => ReactElement)—動作とアクセシビリティの接続を維持したまま、描画する要素を置き換えます。

Select.Content

Prop型既定値説明
childrenReactNode—項目、グループ、区切り。このパーツは要素を追加せずchildrenを描画します。

Select.Item

Prop型既定値説明
childrenReactNode—この選択肢に表示するテキスト。
disabledbooleanfalseこの選択肢を選択できなくします。
value*string—この選択肢を選択したときに送信する値。
renderReactElement | ((props, state) => ReactElement)—動作とアクセシビリティの接続を維持したまま、描画する要素を置き換えます。

Select.Group

Prop型既定値説明
childrenReactNode—このグループに属する項目。
label*string—ネイティブの選択肢グループに表示するグループ見出し。
renderReactElement | ((props, state) => ReactElement)—動作とアクセシビリティの接続を維持したまま、描画する要素を置き換えます。

Select.Separator

Prop型既定値説明
renderReactElement | ((props, state) => ReactElement)—動作とアクセシビリティの接続を維持したまま、描画する要素を置き換えます。

キーボード

キー操作
Arrow keysフォーカス時に選択肢を変更
Spaceネイティブのピッカーを開く(プラットフォーム)

アクセシビリティ

テキストのみのネイティブ<select>です。選択、キーボード入力、タイプアヘッド、フォーム送信はブラウザーが管理します。対応するエンジンでは、ピッカーの見た目だけを拡張します。

スタイリングのフック

data-disabled
このページは機械翻訳によるもので、レビューは未実施です。