Firefox 38.0.5は、アドレスバーに「リーダービュー」を追加しました。
ただし、すべてのサイトにこのアイコンが表示されるわけではありません。読み取り可能なコンテンツページが検出された場合にのみ表示されます。それでは、どうすればenable自分のサイトでこれを実現できますか?
メディア印刷と印刷ビュー用の追加のスタイルシートを試しましたが、効果はありません。
<html>
<head>
<style>
@media print { /* no effect: */
.no-print { display:none; }
}
</style>
<!-- no effect either:
<link rel="stylesheet" href="print.css" media="print"><!-- -->
</head><body>
<h1>Some Title</h1>
<img class="no-print" src="http://dummyimage.com/1024x100/000/ffffff&text=This+banner+should+vanish+in+print+view">
<br><br><br>This is the only text
</body></html>
このbook iconがサイトの訪問者に表示されるようにするには、どのコードスニペットをウェブサイトのソースコードに追加する必要がありますか?
ReaderViewを開始するページを実現するには、<div>
または<p>
タグを追加する必要があります。
動作するシンプルなhtmlを作成しました:
<html><head>
<title>Reader View shows only the browser in reader view</title>
</head>
<body>
Everything outside the main div tag vanishes in Reader View<br>
<img class="no-print" src="http://dummyimage.com/1024x100/000/ffffff&text=This+banner+should+vanish+in+print+view">
<div>
<h1>H1 tags outside ot a p tag are hidden in reader view</h1>
<img class="no-print" src="http://dummyimage.com/1024x100/000/ffffff&text=This+banner+is resized+in+print+view">
<p>
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
123456789 123456
</p>
</div>
</body>
</html>
これは、アクティブ化するために最低限必要なものです。これは、テキストチャンクにスコアが追加される、多面的なプロセスです。
たとえば、view-postsテンプレートの各メッセージブロックの周りに<p>
-タグを追加すると、フォーラムのソフトウェアでリーダービューをアクティブにできます。
コードは Nov '17 にあるため、トリガー関数(isProbablyReaderable
)はp
またはpre
要素とdiv
要素のみをスコアリングします少なくとも1つの子孫br
を含む。
スコアリングヒューリスティックのわずかな単純化は次のとおりです。
textContent
の長さが> 140文字の場合、sqrt(length - 140)
だけscore
を増やしますscore
> 20の場合、true
を返します