HTMLにファビコンを追加

著者

確実に表示されるファビコンは、特別なタグひとつで実現するものではありません。アクセス可能な少数のファイルとhead内のリンクを組み合わせます。古い形式をむやみに増やさず、最新のタブ、旧式クライアント、モバイルのショートカットに対応する手順です。

HTMLページのheadと接続されたファビコンファイル
ルート相対URLといくつかの明示的なrel指定で、主な用途に対応できます。

ファイルを用意する

小さくても判別できる正方形のシンボルから始めます。favicon.ico、favicon.svg、apple-touch-icon.png、site.webmanifestと、マニフェストが参照するPNGを、ドメインのルートで配信する公開フォルダーに配置してください。

/favicon.svgのようなパスはドメインのルートから始まります。ページからの相対パスになるfavicon.svgとは異なり、/productsや/blog/articleでも正しい場所を参照します。

headに要素を追加する

まずSVGをrel iconとtype image/svg+xmlで指定し、次にICOをrel iconとsizes anyで指定します。iOS用にrel apple-touch-icon、Webアプリのインストール用にrel manifestを追加してください。

typeは実際に配信する形式と一致させます。PNGを.icoに改名しても使えません。内容とヘッダーがICO形式である必要があります。

確認するファビコン要素
用途関係ファイル
最新ブラウザicon/favicon.svg
互換性icon/favicon.ico
iOSホーム画面apple-touch-icon/apple-touch-icon.png
Webアプリmanifest/site.webmanifest

パスを壊さずにデプロイする

デプロイ後は全ファイルのURLを直接開きます。成功ステータスと画像またはマニフェストが返ることを確認してください。成功に見せかけたステータスでログイン画面や404のHTMLを返していてはいけません。

サブディレクトリで公開する場合は、パスや公開ベースを調整します。開発者ツールで最終ページを調べ、別ホストへのリダイレクトなしで想定URLが要求されることを確認します。

結果を確認する

キャッシュを無効にして再読み込みし、生成されたDOMのlink要素を確認します。タブ、ブックマーク、必要に応じて実機のホーム画面への追加も試してください。

検索結果のファビコンは、検索エンジンの規則やクロールの予定にも左右されます。ブラウザで表示できても、検索結果がすぐに更新されるとは限りません。

一次資料

よくある質問

ファビコンの要素はbodyに置きますか?

いいえ。アイコンやマニフェストを示すlink要素は、文書のheadに置きます。

ルートのfavicon.icoだけで十分ですか?

代替として有用ですが、Apple Touchアイコンやインストール用マニフェストアイコンは定義できません。それぞれの用途に合う形式を指定してください。

/で始まるパスを使う理由は?

ドメインのルートから参照するため、深い階層のページでも、そのページのフォルダー内にファイルを探してしまうことを防げます。

実際に作ってみる

ファイル一式を数秒で無料生成。画像をアップロードする必要はありません。

設置用ファイルを作成

次に読むガイド・試すツール

LFFaviconのその他のツールと、よくある疑問に答えるガイドをご紹介します。

ツール

ガイド