SASS通配符*用于选择父级中的所有ID
我在某个地方看到过将*用于ID或类选择器的能力与SASS…正确的方法是什么 例如,我想选择父div中的所有div id。我可以想象如下:SASS通配符*用于选择父级中的所有ID,sass,Sass,我在某个地方看到过将*用于ID或类选择器的能力与SASS…正确的方法是什么 例如,我想选择父div中的所有div id。我可以想象如下: <div id="parent"> <div id="sub1"> <div class="icon"></div> <div class="content"></div>
<div id="parent">
<div id="sub1">
<div class="icon"></div>
<div class="content"></div>
</div>
<div id="sub2">
<div class="icon"></div>
<div class="content"></div>
</div>
#parent {
#* {
}}
如果以有序的方式命名子级,则可以使用@for指令更容易地进行更新:
$num-of-children: 2
@for $i from 1 through $num-of-children
#sub-#{$i}
@extend %parent-children
#parent
%parent-children
//styles
此外,如果ID更随意,则可以将列表传递到@each指令中以实现类似效果:
$children: sam ramond lemons butter
@each $child in $children
##{$child}
@extend %parent-children
#parent
%parent-children
//styles
您只能使用css选择器,如:
#parent {
div[id] {
// styles
}
}
或
Sass没有这样的通配符,但是CSS有。Sass也只知道CSS对文档标记的了解,换句话说:什么都不知道。你能重新措辞你的问题吗?因为不清楚您到底在寻找什么。您能具体说明一下为什么简单的CSS选择器parent*或parent div不起作用吗?是的,我有点不清楚,对不起,我已经更新了上面的预期代码。基本上我想选择sub1和sub2。所以*和div不起作用,因为它会选择其他的。然而,parent>div会起作用,我只是希望有一种时髦的方式来做到这一点:D我会尝试下面由bookcasey发布的答案并发回!同样,在这个例子中,您可以使用parent>div-plain CSS只选择直接子代。谢谢,这是非常有趣的代码!然而,我应该更具体地说,我的子div实际上没有编号,它们都有唯一的ID名称。然而,这是很好的东西,我会记住的。如何将其用于具有唯一id名称的子div?我使用的是SCSS,所以我对其进行了格式化-这是示例和输出$儿童人数:2人@对于$i从1到$num的子项{sub-{$i}{@extend%parent children}}parent%parent children{background:blue;}parent sub-1,工具栏parent sub-2{background:blue;}edit?我用一个类似的选项更新了我的答案,以获得唯一的名称。哦,这太酷了!你能详细说明一下div[id^='sub']是什么吗?^是在'sub'之后的通配符吗?@petergus Ya!还有更多类似的选择器,请参见
#parent {
div[id^='sub'] {
// styles
}
}