我需要帮助创建一个sass mixin .
我有一个名为vertical3的类,它将相同的图像堆叠在彼此之上3次 . 我也得到一个属性调用重叠,其范围从-2到1,我在下面定义了类 . 这些重叠类与垂直3位于同一级别 .
如您所见,他们只调整前两项的保证金 . 我想为此定义一个sass mixin .
<div class="vertical3 overlap-3">
<img>
<img>
<img>
</div>
.vertical3 {
flex-flow: column;
flex-direction: column-reverse;
justify-content: flex-start;
align-items: center;
img {
max-height: 27%;
}
}
.vertical3.overlap-2 {
img:first-child {
margin-top: -5%;
}
img:nth-child(2) {
margin-top: -5%;
}
}
.vertical3.overlap-1 {
img:first-child {
margin-top: -2.5%;
}
img:nth-child(2) {
margin-top: -2.5%;
}
}
.vertical3.overlap2 {
img:first-child {
margin-top: 5%;
}
img:nth-child(2) {
margin-top: 5%;
}
}
.vertical3.overlap1 {
img:first-child {
margin-top: 2.5%;
}
img:nth-child(2) {
margin-top: 2.5%;
}
}
我想完成这样的事情
.vertical3 {
flex-flow: column;
flex-direction: column-reverse;
justify-content: flex-start;
align-items: center;
img {
max-height: 27%;
}
@inlcude overlap(2.5%)
}
@mixin overlap($base){
adding overlap-2 to overlap2 as classes
}
1 回答
我已经创建了下面的代码来展示如何实现这一目标 .
您将调用mixin并传入您想要使用的较大的边距值,然后mixin将该值除以2以获得较小的边距,并输出您需要的所有相关类 .