2005-07-30
_ FEEDBRINGERを@-moz-documentを使って改良
WebベースのRSSリーダーといえば,Bloglinesが有名ですが,先日FEEDBRINGERという新しいWebベースのRSSリーダーが登場したようです.Bloglinesはここのところよくメンテナンス状態になってしまうし,なんだかレスポンスも以前に比べて悪くなったような気がします.そんなわけで,他に何かいいWebベースのRSSリーダーはないかなと思っていたところでした.
ざっと使ってみた感じは,Ajaxを使っていてさくさくと動いてくれます.さっそくBloglinesのデータをエクスポートして,FEEDBRINGERにインポート.そうすると,リストが多いとBloglinesとは異なりフレームを使っていないから画面全体のスクロール量が増えることに気づく.…使いづらいぞ.ただのにっきでもあげられていますが,未読のfeedをクリックするとページのトップに飛んで,またスクロールして…っていうのは結構面倒.ということで,やはり同じ思いを抱く人はいるようで,greasemonkeyを使って対処されている方がいました.
私もFirefoxを利用しているのですが,最近はTrunkを利用しているためgreasemonkeyが使えません.そこでuserContent.cssを利用してFEEDBRINGERをユーザースタイルシートでいじることにしました.ここでサイト別にCSSルールを適用させる@-moz-documentが使えます.これ自体はGecko/1.8a3くらいから有効らしいです.ちなみに私の利用しているFirefoxのGeckoのバージョンはGecko/1.8b4なのでこのルールが利用できるのですが,URIidという拡張を使っても,似たようなことができるようです.
で,実際に作成したCSSは以下.とりあえずざっと作ってみた感じですが,それなりに使い勝手は向上したような気がします.ついでにデザインも多少変更.とりあえずフィードの部分のみ適用.(@-moz-document url-prefixを利用すればURLの先頭がマッチするものに対して有効になる)
@-moz-document url-prefix(http://feedbringer.net/feed) { #logo-container { background: #E7E3D0 !important; } #tool { display: none !important; } #nav { color: #fff !important; background: #5E766B !important; } #nav a { padding-left: 0.3em !important; padding-right: 0.3em !important; } #nav a { color: #fff !important; border-bottom: none !important; } #nav a:hover { border-bottom: none !important; color: #FFD264 !important; background-color: transparent !important; } #nav .border { border-top: none !important; border-bottom: solid 1px #333 !important; } #container { padding: 0 !important; height: 80% !important; border-bottom: solid 1px #333 !important; } #side { position: static !important; height: 100% !important; overflow: scroll !important; float: left !important; border-right: solid 1px #333 !important; } #main-container { margin: 0 !important; padding-left: 1em !important; padding-right: 1em !important; background: #E7E3D0 !important; overflow: scroll !important; height: 100% !important; } #main .feed, #popular .feed { background: #fff !important; } #main .feed-title, #popular .feed-title { color: #666 !important; background: transparent !important; } #main .feed-entry-title { background-color: #757575 !important; color: #fff !important; } #main a:hover.feed-title, #popular a:hover.feed-title, #main a:hover.feed-entry-title { color: #fff !important; background: #5E766B !important; } #main .feed-entry-information, #main .clip-information { border: 1px solid #757575 !important; } #main-help { color: #000; background: #fff; } #main-padding { display: none; } }
@-moz-documentについてはoutsider reflexで簡単な説明がされています.
ちなみにスタイルシートをテストする際にはいくつかのBookmarkletが活躍しました.JavaScript::Bookmarkletの「スタイルをテスト」と「CSS解除」,それからページの構造を調べるためにMouseover DOM Inspectorを利用しました.
2005-08-26追記:標準で擬似フレームを用いたインターフェースを利用できるようになりました.上記コードは現在そのままではりようできません.