将样式设置为仅使用* ngFor创建的第一个元素

时间:2017-10-23 18:19:45

标签: html css angular ngfor

我正在使用以下代码显示一些*个字符

  <div *ngFor="let line of lines;let i=index">*</div>

我想只为第一个设置保证金。我希望将边距绑定到相应marginVar文件中的.ts变量。

这就是我为所有元素设置边距的方法。

[style.margin-left.px]="marginVar"

如何将其仅应用于使用*ngFor创建的第一个元素?

2 个答案:

答案 0 :(得分:7)

ngFor提供first

<div *ngFor="let line of lines;let i=index; first as isFirst"
    [style.margin-left.px]="isFirst ? marginVar : 0">*</div>

或使用CSS

<div *ngFor="let line of lines;let i=index; first as isFirst"
    [class.first]="isFirst">*</div>

对于所有*ngFor变量,请参阅

https://angular.io/api/common/NgForOf#local-variables

答案 1 :(得分:1)

如果你切换到使用css类,那么它很简单:

ntpdate

否则请使用[class.first]="i === 0" ngIf / ngIfThen)。