HTMLのインデント問題。このブログに関してはHTMLのインデントは(少し妥協して)hamlを使うことにしました。ところが別の問題が。それはインデントされたエントリー内でpreタグを使った場合、意図してないインデントが表示されてしまうことです。

show.html.haml:

.doc
  = @doc

こういうテンプレで、

<pre>あああ
いいい
ううう</pre>

こういうエントリーを書いた場合、

<div class="doc">
  <pre>あああ
  いいい
  ううう</pre>
</div>

こういうHTMLが出力されるのでpreの2行目以降に余計なインデントが表示されてしまいます。

そもそもコードにはcodeタグだけでpreを使わないという手もありますが、通常のWYSIWYGエディタでは2個続きの改行は段落としてpタグがふられて、コード中の空行を意識しないといけないという面倒なことに。かといって改行イコールbrタグというのも気持ちが悪い。

どうしたもんか・・・。

関連:HTMLのインデントを合わせたい - p0t

追記:

hamlのfilterを使えばいい気がしてきたぞ!?

追記2:

hamlでtext_areaを使う時のメモ - Hello, world! - s21g

こちらの情報で解決!htmlでcontentノードの空白が表示に影響があるのはpreとtextarea。共通の問題なんですなあ。

Comments


Option