少数直系孩子

时间:2015-09-02 19:52:17

标签: less siblings

预期的CSS:

.parent > .type1 {
    color: red;
}
.parent > .type2 {
    color: red;
}
.parent > .type3 {
    color: red;
}

原来少:

.parent {
    & > .type1, & > .type2, & > .type3 {
        color: red;
    }
}

如何组合type1 / type2 / type3? 这不起作用,因为type2 / type3将被编译为后代,而不是直接的孩子:

.parent {
    & > .type1, .type2, .type3 {
        color: red;
    }
}

1 个答案:

答案 0 :(得分:4)

使用LESS,&将被整个包装选择器替换。

这意味着

.parent {
  & > .type1, .type2, .type3 {...}
}

变为

.parent > .type1, .type2, .type3 {...}

由于您希望使代码更简洁,您应该注意>组合子是可选的,但&变得多余。编写此选择器的适当方法是:

.parent {
  > .type1,
  > .type2,
  > .type3 {...}
}

反过来产生'

.parent > .type1,
.parent > .type2,
.parent > .type3 {...}