0

私はLessを初めて使用し、可能であればhttp://retinajs.com/を使用して網膜画像をロードしようとしています。

スクリプトには、cssで画像を呼び出すときに使用する次のミックスインがあります。

.at2x(@path, @w: auto, @h: auto) {
  background-image: url(@path);
  @at2x_path: ~`"@{path}".split('.').slice(0, "@{path}".split('.').length - 1).join(".") + "@2x" + "." + "@{path}".split('.')["@{path}".split('.').length - 1]`;
  @media all and (-webkit-min-device-pixel-ratio : 1.5) {
    background-image: url(@at2x_path);
    background-size: @w @h;
  }  
}

私の質問は、画像の1つに変数を使用している場合、ミックスインで機能するために変数を正しく使用するにはどうすればよいですか。

このようなことをしても機能しません:

  .at2x('@myImgPathVariable', 150px, 64px);

これもしません:

  .at2x('("@{myImgPathVariable}/logo.png")', 150px, 64px);

これが理にかなっていることを願っています、ありがとう。

4

2 に答える 2

0
/* did you try without quotes? */

  .at2x(@myImgPathVariable, 150px, 64px);
于 2012-05-03T19:56:46.717 に答える
0

ルークとオムはどちらも何かに取り組んでいます。変数の宣言方法は大きな違いを生む可能性があります。このようにすることは私にとってはうまくいくようでした:

@myImgPathVariable: ~'https://developers.google.com/images/developers-logo.png';

div {
    .at2x(@myImgPathVariable, 200px, 48px);
}

完全な例: http: //jsfiddle.net/jstam/yUtxp/

于 2012-05-11T14:46:08.273 に答える