2012-10-15 3 views
10

一部のreStructuredTextにカラースパンを追加する方法について説明しているa previous questionがあります。Sphinxのインラインスパンの代わりにテキストブロックにCSSとロールを適用する

手順を要約すると:

まず、役割があります。

.. role:: red 

An example of using :red:`interpreted text` 

以下のように変換されます。

<p>An example of using <span class="red">interpreted text</span></p> 

ここで赤いクラスがあります。色を変更するためにCSSを使用できます。

.red { 
    color:red; 
} 

テキストを複数の行にまたがるようにするにはどうすればよいですか?たとえば、次の段落1、2、3 &はすべて "赤" になり

.. role:: red 

:red:`paragraph 1 

     paragraph 2 

     paragraph 3` 

。これを実行しようとすると、警告メッセージが表示されます。

警告:エンド文字列のないインラインで解釈されたテキストまたはフレーズ参照の開始文字列。

スパンを作成せず、テキストに ":red:"を挿入します。これは文字列として解釈されません(警告が示唆しているように)。

基本的に、reStructuredTextでこれを行うことができますか?それができる場合はどうすればよいですか?

私はSphinx 1.1.3を使用しています。

答えて

8

あり、これを行うにはいくつかの方法がありますが、そのうちの一つがclassディレクティブを使用することです:

.. class:: red 

    This is a paragraph. 

    This is another paragraph. 

ほとんどのdocutilsのHTML作成者は、クラスのHTML属性としてHTML出力にこれを使用することを配置しますCSSでスタイルを設定できます。

しかし、スフィンクスでは、特に、少なくともclassではなくrst-classを使用する必要があります。参照:http://sphinx.pocoo.org/rest.html#id3

また、RestructuredTextのブロックレベルの要素の多くは、:class:というパラメータを使用します。これはほぼ同じことをします。

+1

あなたはsphinxで 'rst-class'を使用しても問題ありませんでした。私はそれを動作させるためにそれを使用しなければならなかったが、今は私が望むように動作する。ありがとうございました。 – jmq

関連する問題