アバター (Avatar)

ユーザーや人物を表現するコンポーネントです。画像、イニシャル、ステータス表示、グループ化など様々なバリエーションに対応します。

基本的な使用法

画像アバター

ユーザー
ユーザー
ユーザー

画像アバターのCode:

<div class=“avatar avatar-md”>
  <img src=“user-photo.jpg” alt=“ユーザー” class=“avatar-image” />
</div>

イニシャルアバター

イニシャルアバターのCode:

<div class=“avatar avatar-md avatar-primary”>
  <span class=“avatar-text”>田</span>
</div>

プレースホルダーアバター

プレースホルダーのCode:

<div class=“avatar avatar-md avatar-secondary avatar-placeholder”>
  <svg fill=“none” stroke=“currentColor” viewBox=“0 0 24 24”>
    <path stroke-linecap=“round” stroke-linejoin=“round” stroke-width=“2” d=“M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z” />
  </svg>
</div>

サイズ

サイズバリエーション

XS
xs
S
sm
M
md
L
lg
XL
xl
2X
2xl
3X
3xl

サイズのCode:

<div class=“avatar avatar-xs”>…</div>
<div class=“avatar avatar-sm”>…</div>
<div class=“avatar avatar-md”>…</div>
<div class=“avatar avatar-lg”>…</div>
<div class=“avatar avatar-xl”>…</div>
<div class=“avatar avatar-2xl”>…</div>
<div class=“avatar avatar-3xl”>…</div>

形状

形状バリエーション

円形
角丸
正方形

形状のCode:

<div class=“avatar avatar-lg avatar-circle”>…</div>
<div class=“avatar avatar-lg avatar-rounded”>…</div>
<div class=“avatar avatar-lg avatar-square”>…</div>

色バリエーション

プライマリー
セカンダリー
成功
警告
危険
情報
ピンク
インディゴ
ティール

色のCode:

<div class=“avatar avatar-md avatar-primary”>…</div>
<div class=“avatar avatar-md avatar-success”>…</div>
<div class=“avatar avatar-md avatar-purple”>…</div>

ステータスインジケーター

オンライン状態

オンライン
オフライン
ビジー
離席中

ステータスのCode:

<div class=“avatar avatar-lg avatar-primary”>
  <span class=“avatar-text”>田</span>
  <div class=“avatar-status avatar-status-online”></div>
</div>

画像アバターのステータス

ユーザー
ユーザー
ユーザー

グループ表示

アバターグループ

小サイズグループ
+3
標準サイズグループ
ユーザー
ユーザー
ユーザー
+5

グループのCode:

<div class=“avatar-group”>
  <div class=“avatar avatar-md avatar-primary”>
    <span class=“avatar-text”>田</span>
  </div>
  <div class=“avatar avatar-md avatar-success”>
    <span class=“avatar-text”>佐</span>
  </div>
  <div class=“avatar avatar-md avatar-secondary”>
    <span class=“avatar-text”>+3</span>
  </div>
</div>

通知・バッジ

通知付きアバター

通知ドット
3
数値バッジ
99+
大きな数値
ユーザー
5
バッジ+ステータス

通知・バッジのCode:

<div class=“avatar avatar-lg avatar-primary”>
  <span class=“avatar-text”>田</span>
  <div class=“avatar-notification”></div>
</div>

<div class=“avatar avatar-lg avatar-success”>
  <span class=“avatar-text”>佐</span>
  <div class=“avatar-badge”>3</div>
</div>

クリック可能なアバター

インタラクティブアバター

ユーザー
2
ホバーで拡大・リング効果が表示されます

クリック可能なCode:

<div class=“avatar avatar-lg avatar-primary avatar-button”>
  <span class=“avatar-text”>田</span>
</div>

実用的なパターン

チームメンバー一覧

田中太郎
田中太郎
フロントエンド開発者
オンライン
佐藤花子
佐藤花子
デザイナー
ビジー
山田次郎
バックエンド開発者
離席中

プロジェクト参加者

ウェブアプリ開発プロジェクト

8名参加
メンバー
メンバー
メンバー
+3

ユーザープロフィール

田中太郎
3

田中太郎

オンライン

フロントエンド開発者として5年の経験があります。React、Vue.js、TypeScriptを得意としています。

コメント表示

佐藤花子
佐藤花子

このデザインはとても良いですね!ユーザビリティも考慮されていて素晴らしいです。

2時間前
山田次郎

技術的な実装についても確認しました。問題なく進められそうです。

1時間前

チームメンバーのCode:

<div class=“flex items-center gap-3 p-3 border border-gray-200 rounded-lg”>
  <div class=“avatar avatar-md”>
    <img src=“user-photo.jpg” alt=“田中太郎” class=“avatar-image” />
    <div class=“avatar-status avatar-status-online”></div>
  </div>
  <div class=“flex-1”>
    <div class=“font-medium”>田中太郎</div>
    <div class=“text-sm text-gray-500”>フロントエンド開発者</div>
  </div>
  <div class=“text-sm text-green-600”>オンライン</div>
</div>

プロジェクト参加者のCode:

<div class=“avatar-group”>
  <div class=“avatar avatar-sm”>
    <img src=“member1.jpg” alt=“メンバー” class=“avatar-image” />
  </div>
  <div class=“avatar avatar-sm”>
    <img src=“member2.jpg” alt=“メンバー” class=“avatar-image” />
  </div>
  <div class=“avatar avatar-sm avatar-secondary”>
    <span class=“avatar-text”>+3</span>
  </div>
</div>

アクセシビリティ

  • • 画像アバターには適切なalt属性を設定
  • • イニシャルアバターは背景色とテキストの十分なコントラスト比を確保
  • • クリック可能なアバターにはrole="button"tabindex="0"を設定
  • • ステータスインジケーターはaria-labelで状態を説明
  • • キーボードナビゲーション(Enter/Spaceキー)に対応
  • • 通知バッジはaria-labelで件数を読み上げ
  • • フォーカス表示を明確にする(リング等)
  • • グループ表示ではaria-describedbyで参加者数を説明
  • • 色だけでなくアイコンやテキストでも情報を補完
  • • スクリーンリーダーで適切に読み上げられるよう構造化
3
適切なARIA属性が設定されたアバター