Shishimushi

M2 フィードのスタイル

M2(Opera Mail)の「本文の表示形式」を「HTMLで表示」にした場合、ニュースフィードは、

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<base href="http://feeds.hogehoge/">
<style type="text/css">

後述

</style>
<title>記事タイトル</title>
</head>
<body class="feedEntryBody">
<div class="feedEntryContent">

記事本文

</div>
<div class="feedEntryLinks">
<hr>
<h1>Article:</h1>
<ul class="feedEntryAlternateLinks">
<li><a href="http://feeds.hogehoge/">記事へのリンク</a></li>
</ul>
</div>
</body>
</html>

こんな感じで表示され、

div.feedEntryLinks
{
   margin: 0;
   padding: 0;
}
div.feedEntryLinks > hr
{
   clear: both;
}
div.feedEntryLinks > h1
{
   font-size: 100%;
   font-style: italic;
   font-weight: normal;
   margin: 0;
   padding: 0;
}
ul.feedEntryAlternateLinks, ul.feedEntryRelatedLinks, ul.feedEntryViaLinks, ul.feedEntryEnclosureLinks
{
   margin: 0.5em 0;
   padding: 0;
}
div.feedEntryLinks li
{
   margin: 0 1em;
   padding: 0;
}

というスタイルがhead要素内のstyle要素に指定される。これはちょっと読みにくいので、

body.feedEntryBody {
   font-size: 95%;
   background-color: #e3e8ec;
   padding: 1.5em;
}

div.feedEntryContent {
   background-color: #f5f5f5;
   line-height: 1.5;
   padding: 1em;
}
・
・
・

等という UserCSS を適用して自分好みのスタイルで読んでいた……のは1年半くらい前の話(9.0TP1あたり)。今やってみたら、フィードには UserCSS が適用されないのね。「プレーンテキストで表示」なら mime.css で好きなようにスタイル弄れるけど画像とか表示されないしなぁ……あ、ひょっとして mime.css で指定するようになったのかな? と思ってやってみたけど、body要素が微妙に反映されるだけで、記事本文のスタイルは上のstyle要素のやつで固定。

browser.css適用前

仕方がないので、browser.css であれこれ指定することにした。

browser.css適用後

  1. フィード用のCSSを書く。
  2. 1をbrowser.cssとして適当な場所に保存。
  3. opera:config#Browser CSS File で2のファイルを指定。
  4. Operaを再起動(たぶん)。

参考までに、僕の browser.css(フィードのスタイルのみ抽出したもの)を上げておく。

ここまで神経質にならなくてもいいと思うんだけど念のため。でも、そんなに気になるのならセレクタ使ってもっと厳密に指定した方が良いような気もする。また、他にちゃんとしたスタイルの指定方法があって、別に browser.css でやる必要がなかったのなら、僕はまた恥ずかしい歴史の1ページを刻んだことになる。というか、だいたい M2 はRSSアグリゲータとして微妙? ああそうですか、そうですか。

投稿者:芦塚 | 投稿日時: 2007年 3月26日(月) 03:30

 トップページ 次へ