如何将css设置为角度4中的交替行

时间:2018-11-14 14:08:03

标签: css angular rows alternating

我想定义一个类来替换角度4中的行,该怎么做?

HTML

 <div class="scrollbars">
            <div  *ngFor="let path of Xyzpaths">
                    <div>{{path.xyz}}</div>
                    <div>{{path.salesItem}}</div>
                    <div>{{path.path1}}</div>
                    <div>{{path.path2}}</div>
            </div>
   </div>

CSS

.odd  {   background-color: #f2f9ff;} 
.even {   background-color: #eceff3; }

2 个答案:

答案 0 :(得分:3)

使用CSS的nth-child selector

scrollbars > div:nth-child(even) {background-color: #f2f9ff;}
scrollbars > div:nth-child(odd) {background-color: #eceff3;}

尝试避免在不需要的地方添加模板逻辑,在这种情况下,您不需要这样做-CSS可以做到所有事情,并且比使用模板指令要有效几个数量级。

答案 1 :(得分:0)

是的,您可以在ngFor中使用奇数和偶数局部变量,诸如此类。

<div class="scrollbars">
    <div  *ngFor="let path of Xyzpaths index as i; odd as isOdd; even as isEven"
    [class.Odd]="isOdd" 
    [class.even]="isEven">
            <div>{{path.xyz}}</div>
            <div>{{path.salesItem}}</div>
            <div>{{path.path1}}</div>
            <div>{{path.path2}}</div>
    </div>
</div>