QA@IT

stylusでid名やclass名を変数を使って記述するには??

3225 PV

stylusを使ってcssを記述しているのですが、
id名を変数を使って記述しようとしたところうまくいきません。
書き方をご存知の方、ご教授していただきたいです。

具体的には、このような記述が

positions = (1 2 3),
            (4 5 6),
            (7 8 9)

#wrapper
  for position in positions
    #new_id_ + position[0]
      width 100px

以下のように出力されてしまいます。

#wrapper #new_id_ + position[0] {
  width: 100px;
}

最終的には、

#wrapper #new_id_1 {
  width: 100px;
}

このように変数の値が組合わさった id名を出力したいのですが、
どう書いたらよいでしょうか><

回答

使ったことはないですが、Stylusでinterpolation(変数展開)を使うには変数やリテラルを {} で囲めば良いようなので、

#new_id_ + position[0]

の部分を、

#new_id_{position[0]}

とすればいいのでは?

参考:
http://learnboost.github.com/stylus/docs/interpolation.html

編集 履歴 (1)
  • 教えていただいた書き方でうまくいきました^^
    公式ページも読んだのですが自分では見つけられていませんでした、すみません><
    教えてくださりありがとうございます!!
    -
  • テキストオブジェクトの中に変数の中身を差し込むのは、だいたいどの言語でも interpolation と言うように思いますが、日本語訳は内挿ではなくて「変数展開」という言い方が多いようです(ので、回答のほうも修正しました) -
ウォッチ

この質問への回答やコメントをメールでお知らせします。