2008/12/15

Faviconが表示されない Part 4 (かなり改善)

Faviconが表示されない Part 3 (?がいっぱい)に少し進展がありましたので報告します。

Fixing Custom Favicons for Blogger Blogsによると、
<b:include data='blog' name='all-head-content'/>
でincludeされるGoogle提供のコードにBloggerデフォルトのFaviconの定義が追加されたためにカスタムFaviconが表示されなくなったようです。

このエントリによると、HTMLドキュメントでは後に出てきたタグが常に前に出てきたタグを置き換えて上書きするので、all-head-contentよりも後に<link>タグを埋め込めばよいとのこと。
実際に</head>直前に<link>を埋め込むことを推奨しています。

では、試してみると...

いまいちです。

HTMLドキュメントでは常に...に反して、ブラウザによって
  • 仕様通り最後の<link>タグ
  • 基本最後の<link>タグだが、あまり後ろだと無視
  • 最初の<link>タグ
といった動作の違いがあるようです。

いろいろ試した結果、わかった範囲で最も良いのは、
  • icoをall-head-contentの直前に埋め込み
  • pngをall-head-contentの直後に埋め込み
です。

これで、IE7IE8 Beta、Firefox 3.0、Chrome 1.0で正しく表示できたので良しとします。
SafariさんはBloggerデフォルトFaviconですが、力尽きました、あしからず。


なお、IEのやる気なさぶりの原因の一部も先のブログで解明されました。
それによると、IEはブックマークに登録しないとFaviconを表示しないそうです。
理由はFaviconの名前の由来である"favorite icon"の通り、お気に入りに表示すると解釈しているからだとか...(本当かぁ??)

関連して、修正後確認の際も、お気に入りから削除→IE再起動→お気に入り登録、という手順を踏まないと古いfaviconのままとなってしまいますので要注意です。

それでは、本テーマはこの辺で。 

12/19追記
追加情報有ります。
Faviconが表示されない Part 5 (全て解決)