1

私の.lessファイルは、ページクラスに応じてさまざまな要素の色を設定します。ですから、私の3ページ(約、エネルギー、レポート)については、これらの要素を繰り返しています。これらの要素は、どういうわけか1回だけ対処できるはずだと思いますが、理解できません。

@color_about: #54B948;
@color_energy: #C41230;
@color_reports: #FBB040;

.about {
  @color: @color_about;
  h1, .thick-bottom-border, &.thick-bottom-border { color: @color;     }
  &.button:hover, &.button:focus, &.label { background-color: @color; }
}

.energy {
  @color: @color_energy;
  h1, .thick-bottom-border, &.thick-bottom-border { color: @color;         }
  &.button:hover, &.button:focus, &.label { background-color: @color; }
}

.reports {
  @color: @color_reports;
  h1, .thick-bottom-border, &.thick-bottom-border { color: @color;     }
  &.button:hover, &.button:focus, &.label { background-color: @color; }
}
4

1 に答える 1

5

はい、(~"") を使用して、変数をセレクターとして出力できます。

.do_color("about", #54B948);
.do_color("energy", #C41230);
.do_color("reports", #FBB040);

.do_color(@name, @color) {
  (~".@{name}") {
    h1, .thick-bottom-border, &.thick-bottom-border { color: @color;     }
    &.button:hover, &.button:focus, &.label { background-color: @color; }
  }
}
于 2012-07-13T10:15:06.447 に答える