:嵌套块中的extend()

时间:2014-11-14 02:26:13

标签: css less

此代码:

.first {
    margin: 19px;

    .nested {
        color: white;
    }
}

.second:extend(.first) {
}

输出:

.first,
.second {
  margin: 19px;
}
.first .nested {
  color: white;
}

但是如果你将它包装在另一个块中:

div {
    .first {
        margin: 19px;

        .nested {
            color: white;
        }
    }

    .second:extend(.first) {
    }
}

输出:

div .first {
  margin: 19px;
}
div .first .nested {
  color: white;
}

无视延伸?这是一个错误吗?

1 个答案:

答案 0 :(得分:4)

从上面的comment @seven-phases-max

不,这不是错误。 :extend与其使用的选择器无关;它总是需要一个完整的(“绝对”)选择器“路径”。即无论.second:extend(div .first)本身位于何处,都应为.second

div {
    .first {
        margin: 19px;

        .nested {
            color: white;
        }
    }
    .second:extend(div .first) {}
}