如何调用Bootstrap的LESS梯度混合

Mat*_*atm 21 less twitter-bootstrap

Bootstrap垂直梯度mixin定义如下:

#gradient {
  .vertical (@start-color, @end-color) when (@disable-filters)  {
    /* code */
  }
}
Run Code Online (Sandbox Code Playgroud)

我在打电话给.#gradient > .vertical(#fff, #ddd);我.但编译给我以下错误.

ParseError: Syntax Error on line 104 in front.less:104:8
103         border-bottom: 2px solid white;
104         .#gradient > .vertical(#fff, #ddd);
105       }
Run Code Online (Sandbox Code Playgroud)

评论上面的这一行可以解决问题.调用Bootstrap垂直梯度混合的正确方法是什么?

AJ *_*ani 30

这个想法在Bootstrap 3中是相同的(正如David Taiaroa建议的那样),此外还有两个额外的参数可以传递来控制渐变的外观:

.vertical(@start-color; @end-color; @start-percent; @end-percent)
Run Code Online (Sandbox Code Playgroud)

例如,您可以在custom.less文件中执行以下操作:

@import '../less/bootstrap.less';

.promo-content{
  #gradient.vertical(#fff; #c3c3c3; 0%; 10%);
  height:100px;
  .text-center;
  padding-top: 25px;
  margin-bottom: 10px;
  border:1px solid #e2e2e2;
}

.promo-content2{
  #gradient.vertical(#fff; #c3c3c3; 0%; 90%);
}
Run Code Online (Sandbox Code Playgroud)

您将获得以下结果:

在此输入图像描述


Dav*_*roa 27

我认为Bootstrap v2.2.2文档中可能存在一些关于某些梯度混合的拼写错误.如果检查mixins.less文件,调用渐变mixin时看起来不需要前导点,即#gradient> .vertical(#999,#fff);

我有这个工作.

在html页面上,我有一个ID = gradient-test的div

在我的自定义mixin中,我有:

#gradient-test{  
#gradient > .vertical(#999, #fff);  
}
Run Code Online (Sandbox Code Playgroud)

祝好运!