Kahua内でのCSSの扱い
今まで、site/static/css/以下に静的に置いていたけどやっとKahua内からの扱い方が分かったのでメモ。
以前ソースコードでちらっと見たんだけど、時間が取れなくて放置していたのを確認した。
Kahuaのソースコードのsrc/kahua/server.scmの下の方に書いてあるのを発見。
コメントからコピペ
(define-entry (test.css) `((css (:class status-completed (background-color "rgb(231,231,231)")) (:class status-open (background-color "rgb(255, 225, 225)"))))) (head/ (link/ (@/ (rel "stylesheet") (type "text/css") (href (kahua-self-uri-full "test.css")))))
つまり、define-entryでcssを書いて、kahua-self-uri-fullでcssを指定すればOKみたい。
.hoge { ... } #fuga { ... }
は
(:class hoge ... ) (:id hoge ... )
body { ... }
なら
(body ... )
さらに複雑な形でもOK。
body#hr { ... }
なら
(body :id hr ... )
といった具合。
指定する値も簡単。
body { width:60%; }
なら
(body (width "60%") )
となる。
動作を理解するのに色々実験して時間が掛かったけど、分かれば実に簡単。