在BEM中,我明白,使用修饰符,两个破折号是有意义的,以便您可以将my-block-my-modifier中的修饰符与my-block-my-modifier进行区分.
但是为什么要使用block_element而不是block_element?
解决方法
双下划线用于定义块的子元素.
即:
<nav class="main-nav"> <a class="main-nav__item" href="#">Text</a> </nav>
其中主导航是一个块main-nav__item是一个子元素.
这样做是因为有些人可能会像这样的main_nav命名它们的块,这会造成如下所示的单个下划线的混淆:main_nav_item
因此,双重下划线将澄清如下所示的内容:main_nav__item.