gpt4 book ai didi

css - Sass: @Extend Sibling (3rd level) 没有之前的 Sibling (2nd) 名字

转载 作者:太空宇宙 更新时间:2023-11-04 12:17:02 25 4
gpt4 key购买 nike

目前,我正在寻找 Sass 的最佳方法。所以这就是问题所在,我正在寻找的结构是:

.block-color-default, .block-color-default--inner{
...........
}
.block-color-default--inner{
.........
}

但是我从我的代码中得到的一个坏结果是:

.block-color-default, .block-color .block-color-default--inner{
...........
}
.block-color-default--inner{
......... << -- (cannot override the css above)
}

这是我的代码:

.block{

&-color{
width: 100%;
height: 500px;
display:block;
background-color: #ccc;

&-default, %third{
width:100px;
height:50px;
background-color:#fff;

&--inner{
@extend %third;
background-color: #000;
}

}
}
}

解决此问题的最佳方法是什么?我不想使用 !important。非常感谢您的建议。

干杯,

最佳答案

使用 @at-root 指令删除已编译 CSS 中的所有父级:

.block{

&-color{
width: 100%;
height: 500px;
display:block;
background-color: #ccc;

@at-root &-default, %third{
width:100px;
height:50px;
background-color:#fff;

&--inner{
@extend %third;
background-color: #000;
}

}
}
}

生成的 CSS:

.block-color { width: 100%; height: 500px; display: block; background-color: #ccc; }
.block-color-default, .block-color-default--inner { width: 100px; height: 50px; background-color: #fff; }
.block-color-default--inner { background-color: #000; }

Documentation

关于css - Sass: @Extend Sibling (3rd level) 没有之前的 Sibling (2nd) 名字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28621838/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com