2012-10-02 19 views
20

私は現在、行ごとに4つのサムネイルのサムネイル画像を設定しています。nth-child内でSASS変数を使用していますか?

li:nth-child(5) { margin-left: 0;} 

私は何をしようとしたことはこれですが、私は構文エラー取得しています:私は、n番目を変更したい場合は

$galleryGrid: 5; 
    li:nth-child($galleryGrid) { margin-left: 0;} 

を確認してください彼らは、私はこのコードのスニペットを持って並べるようにするには-childは10などの別の値を使用します(8つの親指を並べることができます)ので、これはうまくいくと思います。 これはできないのですか、間違っていますか?

ご協力いただきありがとうございます。

答えて

37

nth-childを変数にするには、変数補間を使用する必要があります。

$galleryGrid: 5; 
li:nth-child(#{$galleryGrid}) { margin-left: 0;} 

あなたの要素は、常にすべての第五1は、新しい行を開始しますように包むことを確実にするために、画像やレイアウトを完全に制御を持っている場合は、このマークアップは結構です

li:nth-child(5){margin-left:0} 

を生成します。そのような保証ができない場合は、親要素に負のマージンを設定する方が良い方法です。

+0

マイナスのマージンを試しましたが、正しく動作させることができませんでしたか?私はライブの例はありません。上記のスニペットはうまくいきました。私はSassを初めて使っていて、#を追加しなければならないことに気付きませんでした。 –

+0

答えを受け入れることを忘れないでください^^。ここで、仕事場でのマイナスマージンのデモがあります(ブラウザのサイズを変更してみてください):http://jsfiddle.net/5JZGt/ – cimmanon

+0

もう一度お手伝いしていただきありがとうございます。 –

関連する問題