Card

コンテンツをグループ化して表示するコンテナコンポーネント。関連する情報をまとめて提示する際に使用します。

Basic

jui-card の最も基本的な使用例です。

コンテンツ

関連コンポーネント

  • Accordion — コンテンツを折りたたみ可能なセクションに整理するコンポーネント
  • Divider — コンテンツ間に視覚的な区切り線を挿入するコンポーネント

ブラウザ対応

このコンポーネントが使用しているブラウザ機能と対応状況です。

機能用途ChromeFirefoxSafariステータス
::slotted()ヘッダーやフッター、本文に配置されたコンテンツの配置・スタイル制御53+63+10+Baseline 2020
Flexboxヘッダーアクションやフッターボタンの配置29+22+9+Baseline 2017
CSS 変数 (var())デザイントークン(影、角丸、背景色等)適用49+31+9.1+Baseline 2017

💡 いずれの機能も主要ブラウザで広く対応済みです。

Baseline 情報

機能Baseline 達成Widely Available 予定
::slotted()2020年2022年後半 ✅
Flexbox2017年2020年前半 ✅
CSS 変数2017年2020年前半 ✅

アクセシビリティ

  • WAI-ARIA:
    • 情報コンテナとしてレイアウトに使用される場合は、スクリーンリーダーによる意味構造には直接影響しません。
    • clickable="true"(クリッカブルカード)が設定された場合、ルート要素に自動的に tabindex="0" が設定され、キーボードからのフォーカスが可能になります。また、スクリーンリーダー用に対話的であることを示す処理が行われます。
  • キーボードナビゲーション:
    • clickable="true" 時は、Tab キーでカードにフォーカスし、Enter または Space キーでクリックイベントを実行できます。

CSS カスタムプロパティ

このコンポーネント固有のカスタムプロパティはありません。グローバルのデザイントークンを参照してスタイルが適用されます。

プロパティ

コンポーネントが受け付ける属性(Props)の一覧と詳細仕様です。

PropertyAttributeDescriptionTypeDefault
cardTitlecard-titleカードのタイトルstring | undefinedundefined
clickableclickableクリッカブルカードbooleanfalse
paddingpadding内側余白"lg" | "md" | "none" | "sm"'md'
variantvariantスタイルバリアント"elevated" | "flat" | "outlined"'elevated'

イベント

コンポーネントから発火するカスタムイベントの一覧です。

EventDescriptionType
juiCardClickクリッカブルカードがクリックされた時に発火CustomEvent<{ cardTitle?: string | undefined; }>

スロット

コンポーネント内に子要素を挿入するためのスロット一覧です。

SlotDescription
カード本体(デフォルトスロット)
"footer"フッター(未使用時は自動非表示)
"header"カスタムヘッダー(cardTitle と排他)
"header-actions"ヘッダー右側のアクション
"media"カード上部の画像・メディア

シャドウパーツ

CSSから直接スタイリング可能な内部要素(Parts)の一覧です。

PartDescription
"body"本文領域
"card"ルートコンテナ
"footer"フッター領域
"header"ヘッダー領域
"media"メディア領域
"title"タイトルテキスト

Built with StencilJS