比如我有一个class为a,class为a的元素中可能出现class为b或者c的子元素,如何定义当且仅当class为a的元素内部有class为b的子元素时背景色才为红色的效果,这种sass的语法应该怎么写?
比如我有一个class为a,class为a的元素中可能出现class为b或者c的子元素,如何定义当且仅当class为a的元素内部有class为b的子元素时背景色才为红色的效果,这种sass的语法应该怎么写?
这种情况 JS 控制比较好。CSS 不能反过来匹配,非要用的可以参考一下,在末尾添加一个 bg 标签,比较 hack
.a {
position: relative;
.bg {
position: absolute;
z-index: -1;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
.b ~ .bg {
background: red;
}
}
<div class="a">
<div class="b">I'm b</div>
<div class="bg"></div>
</div>
10 回答11.2k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答2k 阅读
3 回答2.3k 阅读✓ 已解决
无法实现,建议你可以换个思路。比如在写html(或html模板)的时候有b元素的a元素 就给a元素加一个类,这样的话就好实现你要的效果了对吧?