Alert
ユーザーに重要な情報を伝えるためのフィードバックコンポーネント。成功、警告、エラー、情報などの状態を視覚的に区別して表示します。
Basic
jui-alert の最も基本的な使用例です。
Variants
variant プロパティを使用してコンポーネントの視覚的なスタイルを変更します。
Dismissible
dismissible プロパティを使用して、ユーザーが閉じることができるアラートを作成します。
Custom Content
スロットを使用して、リッチなテキストやHTML要素を表示します。
Custom Icon
slot="icon" を指定した要素(アイコン用WebフォントやSVG、絵文字など)を挿入することで、デフォルトのステータスアイコンを任意のものに上書きできます。
関連コンポーネント
ブラウザ対応
このコンポーネントが使用しているブラウザ機能と対応状況です。
| 機能 | 用途 | Chrome | Firefox | Safari | ステータス |
|---|---|---|---|---|---|
color-mix() | カラーバリアント | 111+ | 113+ | 16.4+ | Baseline 2023 |
@starting-style | フェードインアニメーション | 117+ | 129+ | 17.5+ | Baseline 2024 |
allow-discrete | display トランジション | 117+ | 129+ | 17.4+ | Baseline 2024 |
💡
@starting-styleとallow-discreteはアラート表示時のフェードインアニメーションに使用しています。未対応ブラウザではアニメーションなしで即座に表示されます。
Baseline 情報
| 機能 | Baseline 達成 | Widely Available 予定 |
|---|---|---|
color-mix() | 2023年 | 2025年後半 ✅ |
@starting-style | 2024年 | 2026年後半 |
allow-discrete | 2024年 | 2026年後半 |
アクセシビリティ
- WAI-ARIA:
- アラートコンテナの
roleはバリアントに応じて自動的に切り替わります。variant="warning"およびvariant="danger"の場合はrole="alert"(緊急性の高い通知)、variant="info"およびvariant="success"の場合はrole="status"(補足的な通知)が付与されます。 visibleがfalseの場合はaria-hidden="true"が付与され、非表示状態のアラートが支援技術から読み上げられないようにしています。dismissibleがtrueのときに表示される閉じるボタンはネイティブの<button type="button">で、aria-labelにdismissLabel(デフォルト"Dismiss")が設定されます。dismissLabelProp により多言語化できます。- ステータスアイコンおよび閉じるボタン内の SVG には
aria-hidden="true"が指定されており、装飾要素として支援技術から無視されます。
- アラートコンテナの
- キーボードナビゲーション:
dismissible時の閉じるボタンはネイティブの<button>要素のため、Tabキーでフォーカスでき、EnterまたはSpaceキーでアラートを閉じることができます。
プロパティ
コンポーネントが受け付ける属性(Props)の一覧と詳細仕様です。
| Property | Attribute | Description | Type | Default |
|---|---|---|---|---|
dismissLabel | dismiss-label | 閉じるボタンのアクセシビリティラベル(i18n対応) | string | 'Dismiss' |
dismissible | dismissible | 閉じるボタンの表示有無 | boolean | false |
message | message | アラートのテキストメッセージ(スロットの代わりに使用可能) | string | undefined | undefined |
variant | variant | アラートのバリアント | "danger" | "info" | "success" | "warning" | 'info' |
visible | visible | アラートの表示状態(外部から再表示可能) | boolean | true |
イベント
コンポーネントから発火するカスタムイベントの一覧です。
| Event | Description | Type |
|---|---|---|
juiDismiss | 閉じるボタンがクリックされた時に発火するイベント | CustomEvent<{ variant: string; }> |
スロット
コンポーネント内に子要素を挿入するためのスロット一覧です。
| Slot | Description |
|---|---|
| アラートメッセージ(デフォルトスロット) | |
"icon" | 左側アイコン(デフォルトアイコンを上書き) |
シャドウパーツ
CSSから直接スタイリング可能な内部要素(Parts)の一覧です。
| Part | Description |
|---|---|
"alert" | アラートコンテナ |
"content" | コンテンツ領域 |
"dismiss" | 閉じるボタン |
"icon" | アイコン領域 |
Built with StencilJS