有人告訴我,我錯了編寫代碼就像下面我有。我想元素不能包含塊和它的壞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