SphinxでCSSのclassを変更する¶
r_rudiさんから引き継ぎました、 Sphinx アドベントカレンダー 2012 21日目です。
Sphinx MLから拾ってきた小ネタです。
Figureをセンタリングしたい¶
figureやimageを使って画像を貼り付けたはいいけど、センタリングしたい! と言うときがあるかと思います。
そういうときは、以下のように、 :figclass: オプションをつけてみましょ う。こうすると、CSSのクラスに指定したクラスが付け加わります。
.. figure:: hoge.png
:figclass: align-center
この例では align-center というクラスが加わり、センタリングされます。
デフォルトのテーマでは
align-center
align-right
align-left
が設定されていますので、お好みに応じて設定すると良いと思います。
あるいは、自分でCSSを定義しておき、好きなクラスを振ることもできます。 また、空白区切りで複数書くこともできます。
classオプション¶
さて、このfigclass、実は他のディレクティブにも使える場合があります。
.. csv-table:: Frozen Delights!
:class: something-special-class
"Albatross", 2.99, "On a stick!"
"Crunchy Frog", 1.49, "If we took the bones out"
"Gannet Ripple", 1.99, "On a stick!"
こんな感じで例えばcsv-tableにも設定出来ます。
詳しくは ディレクティブの紹介 を参照してく ださい。
classディレクティブ¶
上のはディレクティブに対するオプションでした。でも、たまには「このパラ グラフにクラスを適用したい!」ということもあるでしょう。
そういう場合には、 rst-class ディレクティブを使います。
.. rst-class:: hoge
ほげですよ
こう書くと、「ほげですよ」の部分がhogeクラスとなります。
なお、通常のdocutilsでは class ディレクティブを使うのですが、 Sphinxではデフォルトドメインに class ディレクティブが存在するため、この ディレクティブはそのままでは使用することができません。そのため、 rst-class という名前で再定義されています。
この辺は reStructuredText入門 を参照してください。
まとめ¶
今回は表示のときにクラスを制御するというちょっとしたtipsでした。
明日は @Harrison さんです。よろしくお願いします。
Comments
comments powered by Disqus