おぎろぐはてブロ

なんだかんだエンジニアになって10年以上

Yahoo!のアイコン画像

昨日の記事書いてるときに、気づいたのだけれど、www.yahoo.comのページのアイコン画像は、アイコン1個で1画像でなくて、巨大な画像に複数個配置して、その一部分を表示するようになっている。
おもしろいのでメモ。

左のショートカットの場合は、こんな感じで、background-positionをずらすことでアイコンを表示している。

<li class="adaptive">
<a href="r/2a" style="background-position: 0pt -1519px;">Y! Japan</a>
</li>
<li>
<a href="r/2h" style="background-position: -400px -439px;">Autos</a>
</li>

数十バイト〜数キロバイトの小さなアイコンを大量に読ませるよりも、パターンテーブルみたいな1つの画像(数十キロバイト)として読ませると、たしかにネットワーク的なパフォーマンスはよくなりそう。クライアント側のレンダリングの負荷はどうなのか分かんないけど。

作る側としては、新しくアイコンを追加するには、アイコンを登録して、画像のリビジョンを上げてアップロード、電卓片手にポジション計算して、ってプロセスか。
おもしろいなぁ。


(昨日の記事の画像そのまま貼り付け)