Icon
視覚的な「手がかり」を提供
Example#
Props#
Name | Type | Default | Description |
---|---|---|---|
color optional | 'white' 'black' 'blue' | - | 色。指定しない場合はinheritとなり、親要素のcolorプロパティを継承します |
data-* optional | string | - | Custom data attributes |
icon required | 'ubie-iconsのアイコン名' | - | アイコンの種類 |
id optional | string | - | ネイティブの`id`属性。ページで固有のIDを指定 |
label optional | string | - | アイコンが何を表すかを説明するテキスト 単に装飾的なアイコンの場合は指定しない |
size | 'xs' 'sm' 'md' | 'md' | サイズ xs=16px, sm=20px, md=24px, lg=28px, xl=32px, xxl=64px, xxxl=80px, xxxxl=104px 2xl、3xl、4xlはdeprecatedな指定となります |
Feature#
- ユーザーの注目を引き、形から連想される意味によってユーザーの理解を助けることができます
@ubie-oss/ubie-icons
に存在するアイコンを使用できます@ubie-oss/ubie-icons
を単独で使う場合と比べスタイリングが容易です
Usage#
アイコンのバリエーションはElements/Iconsを参照してください。
スタイリング#
propを通して可能です。
<Icon icon="AlertIcon" color="red" />
<Icon icon="UbieIcon" size="2xl" />
色を指定しない場合は、親要素のcolor
の影響を受けます。
次の場合は、アイコンはprimary
カラーとなります。
<Color color="blue">
<Icon icon="UbieIcon" /> Ubie Vitals
</Color>
アイコン単独での使用#
基本的には、アイコンはテキストと併用して利用することを推奨します。アイコンの持つ意味が100%ユーザーに伝わるとは限りません。
単独で使用する場合は、label
propにそのアイコンがどういった意味を持つかを記述してください。
label
を使わない場合、支援技術等からはアイコン自体がみえません1 。
<Icon icon="SetupIcon" label="設定" />
コントラストを確保する#
テキストと同様に、コントラストを確保し視覚的にアイコンを見やすくしましょう。特にアイコン単体で使うような場合、必ずコントラストを確保すべきです。 アイコンが見づらいものである場合、その機能も果たせなくなっているはずです。
WCAG では隣接した色とのコントラスト比を 3:1 以上とすることを推奨しています。
参考:
Related resources#
- Elements/Icons
- ubie-oss/ubie-icons
- Figma - Ubie Icons
- アイコンをボタンやリンクに使うときは - ユビー AI 受診相談でほんとうに起きていた怖い話