Lessの中でforループを実行したいと思っています。 Lessの中でこれを行うことは可能ですか?私はそれがjsを評価する能力を持っていることを知っていますが、この程度ですか?LESS CSSの内部でJavascript forループを実行できますか?
答えて
チェックアウトにはTwitter Bootsrapをお勧めします。彼らはそのようにグリッドシステムを構築しています。彼らは必要なすべてのクラスを入力するのではなく、少ないミックスインで再帰でループします。
興味深い部分はmixins.lessファイルで、lessディレクトリの "// The Grid"コメント(516行目)の下にあります。興味深い部分は、次のとおりです。(特に)を生成
#grid > .core(@gridColumnWidth, @gridGutterWidth);
:
.span12 {
width: 940px;
}
.span11 {
width: 860px;
}
.span10 {
width: 780px;
}
...
bootstrap.cssをこの方法以下のディレクトリにgrid.lessファイルで呼び出され
#grid {
.core (@gridColumnWidth, @gridGutterWidth) {
.spanX (@index) when (@index > 0) {
(~"[email protected]{index}") { .span(@index); }
.spanX(@index - 1);
}
.spanX (0) {}
...
.span (@columns) {
width: (@gridColumnWidth * @columns) + (@gridGutterWidth * (@columns - 1));
}
...
@gridColumnWidth、@gridGutterWidthおよびその他の変数のチェックvar iables.lessファイル(184行目)
最後のバージョンのlesscノードコンパイラがインストールされていることを確認してください。
ありがとうございました。誰かがこれを理解するのに困っている/詳細な説明が必要な場合:http://blog.thehippo.de/2012/04/programming/do-a-loop-with-less-css/ – TheHippo
私はこれをBootstrapで見ました昨夜、それが私の心を吹き飛ばし、私は自分のグリッドライブラリに実装しなければなりませんでした。非常にすばらしい! – kalisjoshua
あなたはそれが役に立ちますようにうれしい@kalisjoshua!応援はいつも歓迎です:) – AlessMascherpa
the docsのループについては何もありませんが、あなたは、バッククォートを経由してJavaScriptの表現にアクセスすることができるので、あなたは常にあなたのスクリプト(ない自分のLESSコード内の関数を定義するが、JavaScriptでき —は例えば、IFは、ブラウザでは、あなたがしたいです例えば、あなたのループを実行し、別script
要素)を持っているし、それをアクセス:
@height: `doMyLoop()`
それはあなたがループで達成しようとしているものに依存します。ループにCSSルールを出力させたい場合は、運が悪いと思われます。
私は24 colグリッドで作成するループを作成しようとしています。基本的には、24回まで循環してグリッドクラスを作成したいと思っています。 .grid_1、.grid_2、....、.grid_24 –
これは上記のAlessMascherpaで与えられた例を小さな改行で行うことができますが、出力が下がる(10,9,8 ...)と上がる(1、 2,3 ...)、それは単なる文体的なものです。 – augurone
これはハックですが... これをファイルに追加してください。
@testColor: green;
unusedclass {
unknownprop: ~`loopCss(10,".group{{i}} { background-color: @{testColor}; }")`
}
次の関数でのJavaScriptファイルloopCss.jsを作成します。
function loopCss(count,cssTemplate) {
// end the existing unused class
var result = "0;}\n";
// Add your custom css
for(var i=0; i<count; i++) result += cssTemplate.replace("{{i}}",i) +"\n";
// Handle the close bracket from unused class
result += "unusedclass {";
return result;
}
は、今すぐあなたのless.js前loopCss.jsが含まれており、それが動作するはずです。
- 1. LESS CSS syntax for modernizr
- 2. Javascriptのforループで別のAPIを実行する
- 3. C#Forループの内部メソッド
- 4. JavaScriptのforループ内のsetInterval
- 5. 関数内のJavaScript forループ
- 6. Forループをバッチファイルで実行する
- 7. ロック付きループ内でのスレッド実行
- 8. ForループでSelenium Pythonコードを実行
- 9. forループ内のbashスクリプトから複数のプログラムを実行
- 10. forループでreplace()メソッドを実行していますか?
- 11. 実行ループ内での実行順序
- 12. forループのiphoneの内部でNSTimerを使用するには?
- 13. ループ内で外部PHPファイルを実行する
- 14. URLパラメータをless cssで使用できますか?
- 15. ループ実行のために内部で遅延を与える
- 16. forループ内での使用。
- 17. bind_paramとループ内で実行?
- 18. forループの後でJavaScriptコードが実行を停止する理由
- 19. forループ内の非同期関数呼び出し内で条件付きでコールバックを実行
- 20. forループ内でJavascript変数を設定する
- 21. RobotFrameworkでは、For-Loopでテストケースを実行できますか?
- 22. Forループ内のForループ - ListArrays - Android、Java!
- 23. forループ内のjavascriptオブジェクト内を移動する
- 24. JavaScript:コレクションがforループでnullです
- 25. MS AccessでForループでInsertストアドプロシージャを実行する
- 26. JavaScript forループのヘルプ
- 27. Javascript setTimeout issue for w/forループ
- 28. XNAのTaskFactory実行時にループ内でテクスチャにSetDataを実行するとき
- 29. 何とかPromisesで同期ループを実行できますか?
- 30. jspのjava部分からjavascript関数を実行することはできますか? JSP内
LESSは単なるCSSプリコンパイラです。最終的な結果は、単純なCSSです。私はJavascriptがどこに来るのかわかりません。 –
@Pekka:LESSは、ブラウザのクライアント側とNode.js([more here](http://lesscss.org/))を介してサーバー側の両方で動的に実行できます。その構文の一部は実際に(クライアント側の)JavaScript式を評価することです: '@height:\' document.body.clientHeight \ '; ' –
@ T.J。ああ、あなたは何を知っていますか?興味深い、ありがとう。 –