omega()
機能には奇妙な問題がありましたので、source codeを調べて、nth()
機能の使用を見ました。 SassMeister I see that all Sass engines produce the same weird outputでnth
を試した後ユニット番号のないユニットでSassが番号を追加しないようにする
:
.foo {
content: nth(5n + 3, 1);
}
input.scssは
.foo {
content: 8n;
}
012 output.css
を生成します
ご覧のとおり、私の表現には奇妙な「数学」があります。 Sassが2つの要素を結合しようとしているかのように見えますが、数学的には意味がありません。
これは私が4n+4
の疑似セレクタ(...すべての4,8,12に適用され、その後、最初の4をスキップ)を作成するために@include omega(4n+4)
を期待するとして、この機能を使用してミックスインするためのいくつかの悪い結果を持っていますが、それ代わりに8n
を作成します(8番目の要素ごとに適用)。
なぜこれがそうであるべきか、これが仕様になった初期のバグである理由がありますか?それは避けることができますか?
何が起こりそうですか? 'nth'メソッドはリストから特定の項目を返すことになっています。 –
はい、最初の要素として '5n + 3'を返します。 – oligofren
たとえば、 'nth(1 2n + 1 3、2);'はリストの2番目の要素、 '2n + 1'を返すように要求しています。そしてそれはそれを行いますが、その過程でそれを '3n'に変換します。 – oligofren