SlimでIE条件付コメント的なHTML要素を出力

Rubyしてます!

SlimはRubyのテンプレートエンジンです.

Padrinoが対応していたので使ってみている.RubyMineが対応していないのが惜しいので,add slim templating support : RUBY-6967にvoteしておいた.

んで,冒頭のタイトル通りIE条件付コメントなHTMLを,なんとか出力できたのでスニペットのシェアを兼ねてメモエントリ.以下の例示はHTMLの冒頭部分のみです.

Slimテンプレート

以下のようにSlimテンプレートに記述しました.

doctype 5
/![if lt IE 7]><html class="no-js ie6 oldIE" lang="ja"><![endif]
/![if IE 7]><html class="no-js ie7 oldIE" lang="ja"><![endif]
/![if IE 8]><html class="no-js ie8 oldIE" lang="ja"><![endif]
/![if gt IE 8]><!
html class="no-js" lang="ja"
  /!<![endif]
  head

素直にSlimのhtml-conditional-commentsを使うと,その場でhtml要素が閉じられてしまうので,普通のhtmlコメントの記法を利用しています.

出力の結果

こうやって出力されました.

<!DOCTYPE html><!--[if lt IE 7]><html class="no-js ie6 oldIE" lang="ja"><![endif]--><!--[if IE 7]><html class="no-js ie7 oldIE" lang="ja"><![endif]--><!--[if IE 8]><html class="no-js ie8 oldIE" lang="ja"><![endif]--><!--[if gt IE 8]><!-->
<html class="no-js" lang="ja">
  <!--<![endif]-->
  <head>

なんか気持ち悪いけどできた〜.

もうちょっとスマートに書ければいいのだけど難しそう.


Author

ahomuAyumu Sato

overflow, Inc.VPoE

東京資本で生きる名古屋の鳥類

Web 技術、組織開発、趣味など雑多なブログ。技術の話題は zenn にも分散して投稿しています。

Bio: aho.mu
X: @ahomu
Zenn: ahomu
GitHub: ahomu

Related

Latest

Archives

Tags

Search