8

LESSでは、次のコードを使用してウィンドウの高さを取得しました。

@winheight:`$(window).height()`

私が得ているのは数字ですが、pxそこにユニットを追加すると、

height: @winheight px;

のようなものにコンパイルされますheight: 910 px

javascriptの評価後もユニットを持ってみました。しかし、私は同じ結果を得ました。

@winheight:`$(window).height()`px
height: @winheight;
...

height:910 px;

どうすればheight:910pxそこに着くことができますか(番号と単位の間にスペースを入れずに)?


編集:

最初の4つの結果については、height:"910px"正しくレンダリングされない文字列が作成されます。

4

7 に答える 7

7

単に文字列補間を使用してから、次を使用して文字列からエスケープします~

@winheight:`$(window).height()`;

height: ~"@{winheight}px";
于 2012-05-29T21:29:27.190 に答える
1

このコードを入力して、何が得られるかを確認してください。

@winheight:0px + `$(window).height()'
于 2012-05-29T07:57:46.060 に答える
1

.css(height)代わりに.height()- これは値 + 単位を返します。

于 2012-05-29T07:58:57.977 に答える
0

空きスペースを置き換えることは役に立ちますか? この答えを読んでみてください: JavaScript でスペースをアンダースコアに置き換えますか?

于 2012-05-29T06:25:24.613 に答える
0

これを試して

@winheight:`$(window).height()+"px"`
height: @winheight;

.height()は単位のないピクセル値のみを返すためです。
代わりに以下を使用します

@winheight:`$(window).css("height")`
    height: @winheight;

.css("height") 単位付きの値を返します

于 2012-05-29T06:26:19.637 に答える
0

これはどうですか:

@winheight:`$(window).height().toString() + "px"`
于 2012-05-29T06:26:23.990 に答える
0

これは、私がよく知らないLESSによってはうまくいくかもしれません。

ドキュメントを読むと、これは可能性です。

@winheight:0px + `$(window).height()`
于 2012-05-29T06:29:26.657 に答える