Sparkle Design

Icon Button

アイコンボタンはフォームの送信、ダイアログの展開、アクションのキャンセル、削除の実行など、アクションやイベントのトリガーとして使用するコンポーネントです。

Icon Button の概要図

Anatomy: 解剖図

Icon Buttonの構成要素を示す解剖図。1はHTML Buttonエレメントを表すContainerを、2は中央に配置され、ボタンにコンテキストを付与するためのアイコン要素を示しています。
ItemNameDescriptionComponentOptional
1ContainerHTML Button エレメント
2Iconボタンにコンテキストを付与するためのアイコン要素Icon

Options: 選択肢

Size

xs

もっとも小さいサイズのアイコンボタンです。Input Dateなど、コンポーネントの中でアイコンボタンを使用するためのサイズです。ページに直接配置することはありません。

xsサイズのIcon Button。

sm

通常よりも小さなサイズです。限られたスペースにアイコンボタンを配置する場合かつアクションの重要性が低い場合に使用します。

smサイズのIcon Button

md (default)

アイコンボタンのデフォルトのサイズです。ノーマルが最も使用されるサイズです。他のサイズのアイコンボタンはノーマルを基準に重要度に応じて使用します。

mdサイズのIcon Button。

lg

大きなアイコンボタンはアクションの重要性を高めるため、使用は極力控えてください。

lgサイズのIcon Button。

Variant

Solid

背景色が付与されているスタイルです。全てのスタイルの中で最も目立つように設計されています。

画面内で最も重要なアクションに使用します。そのため、Solidスタイルのアイコンボタンは同一のビュー内でThemeごとに1回までの使用を推奨します。

SolidスタイルのIcon Button。背景色が青色、グレー、赤色の3つのアイコンボタンが表示されています。

Outline

枠線が付与されているスタイルのアイコンボタンです。副次的なアクションに使用します。

OutlineスタイルのIcon Button。白色の背景に、青色の枠線、グレーの枠線、赤色の枠線の3つのスタイルのアイコンボタンが表示されています。

Ghost

背景、枠線がないアイコンのみのボタンです。主にコンポーネントの中で使用するためのスタイルです。

GhostスタイルのIcon Button。青色、グレー、赤色の3つのアイコンのみ(背景、枠線がない)のボタンが表示されています。

Theme

Primary

体験における必要不可欠なタスクを実行するためのアイコンボタンのカラースタイルです。重要なアクションを目立たせ、アクション同士のヒエラルキーを構築する役割があります。

同じビュー内で3つ以上のPrimaryボタンは使用しないでください。

PrimaryテーマのIcon Button。Solid(青色の背景に白色のアイコン)、Outline(青色の枠線にグレーのアイコン)、Ghost(青色のアイコンのみ)の3つのアイコンボタンが表示されています。

Neutral

デフォルトのカラースタイルです。Primaryと組み合わせて副次的なボタンとして使用することも、単独で使用することもできるアイコンボタンです。

NeutralテーマのIcon Button。Solid(グレーの背景に白色のアイコン)、Outline(グレーの枠線にグレーのアイコン)、Ghost(グレーのアイコンのみ)の3つのアイコンボタンが表示されています。

Negative

破壊的なアクションや、ネガティブな結果をもたらす可能性があるアクションを強調するためのスタイルです。

実行することでユーザーのデータが失われる場合などに使用します。

Variantはユーザーへの破壊的影響の大きさに応じて選択してください。

NegativeテーマのIcon Button。Solid(赤色の背景に白色のアイコン)、Outline(赤色の枠線にグレーのアイコン)、Ghost(赤色のアイコンのみ)の3つのアイコンボタンが表示されています。

States: 状態

Enable状態のButton。青色を基調としたSolidスタイルのアイコンボタンです。

Enable

ユーザーがアイコンボタンを操作する前のデフォルトの状態。

Hover状態のButton。Enable状態よりも濃い青色を基調としたSolidスタイルのアイコンボタンです。

Hover

ユーザーがアイコンボタンにマウスオーバーしている状態。

Active状態のButton。Hover状態よりも濃い青色を基調としたSolidスタイルのアイコンボタンです。

Active

ユーザーがアイコンボタンを操作している状態。

Focus状態のButton。青色を基調としたSolidスタイルのアイコンボタンに対して、Containerの外側に青い枠線が表示されているアイコンボタンです。

Focus

ユーザーがタッチ操作や、キーボードや音声による操作を用いてアイコンボタンに注視している状態。

Disabled状態のButton。Enable状態よりも薄い青色を基調としたSolidスタイルのアイコンボタンです。

Disabled

システムによってアイコンボタンが非活性化されている状態。ユーザーによる操作は不能です。

Loading状態のButton。Enable状態と同じ青色を基調とした、Loadingアイコンを示しているSolidスタイルのアイコンボタンです。

Loading

アイコンボタンの押下によって実行されたアクションが進行中であることをユーザーに提示している状態。

Behaviors: 振る舞い

Tooltip

アイコンボタンをホバーすることでツールチップがアイコンボタンの上部に表示されます。アイコンボタンのラベルが非表示になっている場合でもアイコンボタンの意味を伝える役割を持ちます。

Tooltipの振る舞いを示す図。PrimaryテーマのSolid(青色の背景に白色のアイコン)のダウンロードアイコンボタンの上部に「ダウンロード」というツールチップが表示されています。

Metrics: 寸法

xs

  • Vertical Resizing: Hug
  • Horizontal Resizing: Hug
  • Container Height: 24px
  • padding Vertical: 4px
  • padding Horizontal: 4px
xsサイズの寸法仕様を示す図。

sm

  • Vertical Resizing: Hug
  • Horizontal Resizing: Hug
  • Container Height: 32px
  • padding Vertical: 6px
  • padding Horizontal: 6px
smサイズの寸法仕様を示す図。

md

  • Vertical Resizing: Hug
  • Horizontal Resizing: Hug
  • Container Height: 40px
  • padding Vertical: 8px
  • padding Horizontal: 8px
mdサイズの寸法仕様を示す図。

lg

  • Vertical Resizing: Hug
  • Horizontal Resizing: Hug
  • Container Height: 48px
  • padding Vertical: 8px
  • padding Horizontal: 8px
lgサイズの寸法仕様を示す図。

Usage: 使い方

コンパクトなスタイルでアクションのトリガーをレイアウトする場合にはアイコンボタンを使用します。アイコンボタンは、オーバーフローメニューや検索を開くなどの開始アクションを表すことや、お気に入りやブックマークなど、オンとオフを切り替えることができるバイナリアクションを表すことができます。

アイコンボタンを使用する場合は Button の用法に準じてください。

Contents: 内容

適切な使用例。PrimaryテーマのOutlineスタイルの「カレンダー」、NeutralテーマのOutlineスタイル「設定」、NegativeテーマのOutlineスタイルの「ゴミ箱」の3つのアイコンボタンが並んでいて、アイコンの塗りのスタイルが統一されています。
Do

ボタングループの中ではアイコンの塗りのスタイルを統一します。

不適切な使用例。PrimaryテーマのOutlineスタイルの「カレンダー」、NeutralテーマのOutlineスタイル「設定」、NegativeテーマのOutlineスタイルの「ゴミ箱」の3つのアイコンボタンが並んでいて、「カレンダー」「ゴミ箱」はアイコンの塗りなしのスタイルで、「設定」アイコンは塗りありのスタイルになっていています。
Don’t

ボタングループの中で塗りのスタイルを混合して指定しないでください。

注意が必要な使用例。NeutralテーマのOutlineスタイルの「月、星、キラキラ、太陽」の4つのアイコンボタンが並んでいます。
Caution

ツールチップがなくてもアクションの内容をユーザーに適切に伝えることができるアイコンを選択してください。

References: 参考文献

FittsFirst of all it is not Fitt’s Law. The name of the famous researcher is Paul Fitts, so one should be careful on spelling. Fittswww.interaction-design.org
OK-Cancel or Cancel-OK? The Trouble With ButtonsShould the OK button come before or after the Cancel button? Following platform conventions is more important than optimizing an individual dialog box.www.nngroup.com
ソシオメディア | アイコンは名詞または形容詞を表すアイコンはそれが象徴するオブジェクト(名詞)、あるいはそれを選んだ結果として得られる状態(形容詞)をモチーフにする。処理(動詞)は絵で表すのが難しいので、いくつかの一般的なものを除いて無理にアイコンにしない方がよい。www.sociomedia.co.jp

Change log: 変更履歴

DateChanges
2024/11/29初版を公開
小さな気づきや違和感があればお気軽に教えてください。
フィードバック
Chat illustration