我有以下 HTML:
<ul class="header-menu">
<li class="header-menu__item"><a href="index.html">home</a></li>
<li class="header-menu__item header-menu__item--split"><a href="menu.html">menu</a></li>
<li class="header-menu__item">
<a href="#">features</a>
<ul class="header-menu--dropdown">
<li><a href="menu.html">Menu</a></li>
</ul>
</li>
</ul> <!-- end header-menu -->
我有这个 css,是否可以用更少的方式做这样的事情:
.header-menu{}
.header-menu .header-menu__item{}
.header-menu > .header-menu__item{}
我会像这样用 BEM 用 LESS 写它:
.header-menu{
&__item{
display: inline-block;
float: left;
}
> &__item{ // How can I target first <li>(s) here
}
}
如何将 CSS 规则应用于第一<li>
级?试过> &__item
了,但似乎不起作用。
更新:由我自己修复。我错过&
了前面> &__item
.header-menu{
&__item{
display: inline-block;
float: left;
}
& > &__item{ <--- I miss '&' here
}
}