有人告诉我,我错了编写代码就像下面我有。我想元素不能包含块和它的坏b.e.m.灿元素包含块在BEM
<ul class="b-nav">
<li class="b-nav__item">
<a href="#" class="b-nav__item__link"> Item </a>
</li>
</ul>
我想过写这样说,但它并不显示层次为好。
<ul class="b-nav">
<li class="b-nav__item">
<a href="#" class="b-nav__link"> Item </a>
</li>
</ul>
这是另一种方式,但对我来说,它似乎比上面的例子更糟糕。
<ul class="b-nav">
<li class="b-nav__item">
<a href="#" class="b-link"> Item </a>
</li>
</ul>
是我最初编写它的方式错了吗?如果是这样,为什么,什么是最好的选择。
究竟是两个第一样本之间的区别?而且,你只是在问类名? – xec 2013-04-09 14:23:51
我看不出你做了什么差别或错误。 – 2013-04-09 14:26:06
@EricHarms在大多数真实世界的网站上使用BEM会出现什么问题。使用核心CSS功能比如子选择器通常会更好。所以,你的HTML实际上应该是这样的:'
- Item
',和你的CSS选择器应该像'UL.nav> LI','UL.nav A',或'UL。 nav> LI> A'。 – 2013-04-09 14:28:41