我相信您对嵌套选择器的使用是错误的,它一定是从 Sass 抛出错误。>
在这种情况下,您在包含选择器的别名之后使用了直接后代选择器ul
,因此您编译的选择器看起来像是ul >
无效的。
选择器应遵循模式parent > child
。您可能正在尝试ul > ul
,但嵌套ul
不是 main 的直接后代,ul
而是li
.
您修改后的代码:
ul {
border-top: 2px solid #aaa;
& > li > & {
border-bottom: 1px solid #ccc;
}
}
但请注意,此规则也适用于以下情况,因此您可能应该在嵌套的ul
.
HTML
<ul> // w style: border-top: 2px solid #aaa; border-bottom: 1px solid #ccc;
<li>
<ul> // w style: border-bottom: 2px solid #aaa;
<li>
<ul> // Another list
<li></li>
<li></li>
</ul>
<li>
</ul>
</li>
</ul>
所以这会更好
<ul> // w style: border-top: 2px solid #aaa; border-bottom: 1px solid #ccc;
<li>
<ul class='sub-list'> // w style: border-bottom: 2px solid #aaa;
<li>
<li>
</ul>
</li>
</ul>
使用以下 css/scss
ul {
border-top: 2px solid #aaa;
}
.sub-list { /* Will inherit the above if used on a ul */
border-bottom: 1px solid #ccc;
}