0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Bootstrap Icons の使い方を徹底解説

Posted at

はじめに

Bootstrap Icons は、Bootstrap フレームワークで使用されるオープンソースのアイコンセットです。SVG ベースであり、ウェブアプリケーションやウェブサイトに簡単に統合できます。

SVGとは

SVG(Scalable Vector Graphics)は、XML ベースのベクター画像フォーマットです。解像度に依存しないため、どのサイズでも鮮明に表示されます。これにより、アイコンやグラフィックスが異なるデバイスや画面サイズで一貫して見えるようになります。

この記事では、Bootstrap Icons の導入から基本的な使い方、カスタマイズ方法まで実践的に解説していきます。

Bootstrap Icons の特徴

Bootstrap Icons には以下のような特徴があります。

SVGベースの利点

ビットマップ画像(PNG、JPGなど)と異なり、ベクター画像は拡大縮小しても画質が劣化しません。また、ファイルサイズも軽量で、ウェブサイトのパフォーマンスに優れています。

豊富なアイコン数

1,800種類以上のアイコンが用意されており、ビジネスアプリケーションから個人サイトまで幅広いニーズに対応できます。

カスタマイズの容易さ

CSSで簡単にサイズや色を変更できるため、デザインに合わせた調整が容易です。

ライセンス

MITライセンスで提供されているため、商用利用も無料で可能です。

導入方法

Bootstrap Icons を使い始めるには、いくつかの方法があります。プロジェクトの環境に応じて選択しましょう。

CDN経由での導入

最も手軽な方法です。HTMLの<head>タグ内に以下を追加するだけで使用できます。

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">

npm/yarnでのインストール

Node.js環境でプロジェクトを管理している場合は、パッケージマネージャーを使ってインストールします。

# npmの場合
npm install bootstrap-icons

# yarnの場合
yarn add bootstrap-icons

インストール後、CSSファイルをインポートします。

import 'bootstrap-icons/font/bootstrap-icons.css';

手動ダウンロード

公式サイトからZIPファイルをダウンロードし、プロジェクトに配置する方法もあります。オフライン環境で作業する際に便利ですね。

基本的な使い方

Bootstrap Icons は主に2つの方法で使用できます。

iタグを使った方法

最もシンプルな方法です。<i>タグにクラスを指定するだけでアイコンが表示されます。

<i class="bi bi-heart"></i>
<i class="bi bi-star"></i>
<i class="bi bi-envelope"></i>

クラス名はbibi-{アイコン名}の2つを指定します。アイコン名は公式サイトで確認できます。

SVGとして直接埋め込む方法

より柔軟な制御が必要な場合は、SVGコードを直接埋め込むこともできます。

<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-heart" viewBox="0 0 16 16">
  <path d="m8 2.748-.717-.737C5.6.281 2.514.878 1.4 3.053c-.523 1.023-.641 2.5.314 4.385.92 1.815 2.834 3.989 6.286 6.357 3.452-2.368 5.365-4.542 6.286-6.357.955-1.886.838-3.362.314-4.385C13.486.878 10.4.28 8.717 2.01L8 2.748zM8 15C-7.333 4.868 3.279-3.04 7.824 1.143c.06.055.119.112.176.171a3.12 3.12 0 0 1 .176-.17C12.72-3.042 23.333 4.867 8 15z"/>
</svg>

この方法は、JavaScriptで動的にアイコンを操作したい場合に適しています。

カスタマイズ方法

Bootstrap Icons は CSS で簡単にカスタマイズできます。

サイズの変更

font-sizeプロパティでサイズを調整できます。

<i class="bi bi-heart" style="font-size: 2rem;"></i>
<i class="bi bi-heart" style="font-size: 3rem;"></i>

SVGの場合はwidthheight属性を使用します。

<svg width="32" height="32" class="bi bi-heart" ...>

色の変更

colorプロパティで色を変更できます。

<i class="bi bi-heart" style="color: red;"></i>
<i class="bi bi-star" style="color: #ffd700;"></i>

SVGの場合はfill属性を使用します。

<svg fill="red" class="bi bi-heart" ...>

回転や反転

CSSのtransformプロパティで回転や反転も可能です。

<i class="bi bi-arrow-right" style="transform: rotate(90deg);"></i>
<i class="bi bi-arrow-right" style="transform: scaleX(-1);"></i>

実践例

実際のプロジェクトでよく使われるパターンを紹介します。

ボタンへの適用

<button class="btn btn-primary">
  <i class="bi bi-download"></i> ダウンロード
</button>

<button class="btn btn-danger">
  <i class="bi bi-trash"></i> 削除
</button>

ナビゲーションバーでの使用

<nav class="navbar navbar-expand-lg">
  <ul class="navbar-nav">
    <li class="nav-item">
      <a class="nav-link" href="#">
        <i class="bi bi-house"></i> ホーム
      </a>
    </li>
    <li class="nav-item">
      <a class="nav-link" href="#">
        <i class="bi bi-person"></i> プロフィール
      </a>
    </li>
  </ul>
</nav>

フォーム要素との組み合わせ

<div class="input-group">
  <span class="input-group-text">
    <i class="bi bi-search"></i>
  </span>
  <input type="text" class="form-control" placeholder="検索">
</div>

以下は実際の画面構成のイメージです。

まとめ

Bootstrap Icons は導入が簡単で、豊富なアイコンセットを提供しています。SVGベースのため、どのデバイスでも美しく表示され、CSSで柔軟にカスタマイズできる点が魅力ですね。

この記事で紹介した基本的な使い方をマスターすれば、より洗練されたUIを構築できるようになります。公式サイトには全アイコンのプレビューと検索機能があるので、プロジェクトに最適なアイコンを探してみてください。

次のステップとして、アニメーションを追加したり、JavaScriptと組み合わせて動的にアイコンを切り替えたりするなど、さらなる活用方法に挑戦してみましょう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?