2012-10-15 7 views
10

C'è a previous question che spiega come aggiungere una campata di colore a qualche oggetto di riepilogo.Applicazione di CSS e ruoli per blocchi di testo invece di span inline nella Sfinge

per ricapitolare la procedura:

In primo luogo, si ha il ruolo.

.. role:: red 

An example of using :red:`interpreted text` 

Si traduce come segue.

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

Ora, hai la classe rossa, puoi usare i CSS per cambiare i colori.

.red { 
    color:red; 
} 

Come si fa se si desidera un testo che si estende su più righe? Per esempio:

.. role:: red 

:red:`paragraph 1 

     paragraph 2 

     paragraph 3` 

Quando il paragrafo 1, 2, 3 & sarebbe tutto "rosso". Se provo a farlo, ricevo il messaggio di avviso:

AVVISO: stringa iniziale di riferimento o frase di riferimento interpretata senza stringa finale.

Non crea lo span e inserisce ": red:" nel testo. Semplicemente non lo interpreta come una stringa (come suggerisce l'avviso).

Fondamentalmente, questo può essere fatto in reStructuredText, e se può, come?

Sto usando Sphinx 1.1.3.

risposta

8

Ci sono un certo numero di modi per farlo, ma uno di loro è quello di utilizzare la direttiva class:

.. class:: red 

    This is a paragraph. 

    This is another paragraph. 

maggior parte degli scrittori docutils HTML metteranno che in output HTML come un attributo di classe html, che si può quindi stile con i CSS.

Nella Sfinge, in particolare, tuttavia, potrebbe essere necessario utilizzare rst-class anziché class in alcuni casi. Vedi: http://sphinx.pocoo.org/rest.html#id3

Inoltre, molti elementi a livello di blocco in RestructuredText prendono un parametro :class: che fa praticamente la stessa cosa.

+1

Eri corretto sull'uso della 'rst-class' nella sfinge. Ho dovuto usarlo per farlo funzionare, ma ora funziona come volevo. Grazie. – jmq

Problemi correlati