有一个包含ng-repeat
的span
,我想知道是否可以将CSS类应用于除第一个元素之外的所有元素。
例如
<span ng-repeat="row in element.Parameters track by $index" class="awesome-css-class">
{{element.Parameters[$index]}}
</span>
我的 CSS 类是
.awesome-css-class {
margin-left: 10px;
}
我尝试使用此方法,但显然它不起作用
.awesome-css-class ul:not(:first-child){
margin-left: 10px;
}
有什么建议吗?
试试这个:
<span ng-repeat="row in element.Parameters track by $index" ng-class="{ 'awesome-css-class': $index != 0 }">
{{element.Parameters[$index]}}
</span>
您在语法中添加了错误的ul
:
.awesome-css-class:not(:first-child) {
margin-left: 10px;
}
<div class="awesome-css-class">Element</div>
<div class="awesome-css-class">Element</div>
仅将类应用于第一个元素:
https://docs.angularjs.org/api/ng/directive/ngClass
<span ng-repeat="row in element.Parameters track by $index" ng-class="[$index===0 ? 'awesome-css-class' : '']">
{{element.Parameters[$index]}}
</span>
或者,使用纯 CSS: https://developer.mozilla.org/en-US/docs/Web/CSS/%3Afirst-child
.awesome-css-class:first-child
{
background:red;
}
.awesome-css-class:not(:first-child) 是你想要的。 这将选择所有具有.awesome-css-class类的元素,除了那些是第一个子元素的元素
.awesome-css-class:not(:first-child) {
color: red;
}
<span class="awesome-css-class">1111</span>
<span class="awesome-css-class">2222</span>
<span class="awesome-css-class">3333</span>
<span class="awesome-css-class">4444</span>
<span class="awesome-css-class">5555</span>