Weblog

Linksをサムネイル化した

Posted at 2006-09-17T00:29:00+09:00 in Web Design

Linksをサムネイル化してみた。各サムネイルはSimpleAPIのウェブサイトサムネイル作成API頼みなのでNOW PRINTINGばかりだったりするけど、それはそのうち解消されるはず。無駄にポップアップとかさせてみたり。

Simple APIのウェブサイトサムネイル作成APIが返す画像は決まったサイズなので、ポップアップはかなり前に考えたposition: relative;を利用したテクニックでやった。CSSのコードは、

div#contents div.story ul.thumbnail {
  margin: 1em 0;
  width: 100%;
  line-height: 1;
  list-style-type: none;
}

div#contents div.story ul.thumbnail li {
  margin: 0 1em 1em 0;
  float: left;
  width: 64px;
  height: 64px;
  overflow: hidden;
}

div#contents div.story ul.thumbnail > li {
  overflow: visible;
}

div#contents div.story ul.thumbnail li a img {
  z-index: 1;
  width: 64px;
  height: 64px;
}

div#contents div.story ul.thumbnail li a:hover {
  width: 128px;
  height: 128px;
}

div#contents div.story ul.thumbnail li a:hover img {
  position: relative;
  top: -32px;
  left: -32px;
  z-index: 2;
  width: 128px;
  height: 128px;
}

という感じ。リスト項目をfloatで並べたりしているのと絡んだコードになっているのでややこしく見えるけど、強調したところがポイントになるところで、要は:hoverで画像のサイズを元に戻しposition: relative;でずらして表示させるというだけ。widthプロパティ/heightプロパティ/topプロパティ/leftプロパティの値は画像の縦横サイズに依存するため、あらかじめ画像サイズがわかっていないとこのテクニックは利用できない。ものすごく単純化させたサンプル・ページも参照。Internet Explorer 6とかでもちゃんと動く。もちろんFirefox 1.5やOpera 9でも。

最初はlivedoor ReaderからOPML形式のフィード購読リストを引っ張ってくることにより、完全に動的に更新させようかなと思っていたのだけど、そこまですることもないかなーと思い、定期的にJSON形式のデータを生成してやることにした。JSON形式のデータの構造は、各サイトごとに、

{
  "title":   "hail2u.net - Weblog",
  "htmlUrl": "http://hail2u.net/blog/",
  "xmlUrl":  "http://feeds.feedburner.com/hail2u/blog"
}

というOPML形式のフィード購読リストに似た形にしておいたけど特に意味は無い。多くのフィード・リーダーで惰性で利用されている(私見)OPML形式の代わりに、こういった再利用しやすい形態の購読リストをインポート/エクスポートする仕組みが流行っても良さそうなもんだけど。

追記@2006/09/21

バックエンドがGeckoなMozShotに変更した。エフェクトをはずしたものにしたせいか、多少キレイになった気がする。

追記@2006/09/21

キレイになったけど重すぎなのでSimpleAPIのウェブサイトサムネイル作成APIに戻した。

Recent entries from same category

同じカテゴリに分類された最近10件のエントリです。

  1. CSSで指定するフォント
  2. HTML 4.01とCSS2のHTMLヘルプ
  3. pre要素へのスタイル指定
  4. よく使うライセンス・フリーのフォント
  5. CSS2 Specificationでのプロパティの出現順序
  6. ちょっとだけリデザイン @ 2006/08/29
  7. アスタリスクをプロパティ名の頭につけるというCSSハック
  8. :first-letter擬似要素と各擬似クラス絡みのInternet Explorer 6のバグ
  9. CSSコーディング・スタイル
  10. Yahoo! UI LibraryのFonts CSS

Comments

JavaScriptに対応または有効な環境の場合、ここにはてなブックマークでのこのエントリに対するコメントが表示されます。

Weblog archives

by Category

This page was last modified on 2006-09-21T13:53:16+09:00 (in 0.226 secs).