【发布时间】:2019-09-30 13:56:10
【问题描述】:
虽然我使用 CSS(和其他 CSS 预处理器)已经有一段时间了,但在关注 Block Element Modifier (BEM) convention 时我仍然没有完全自信。
假设我们遵循这种特定的 BEM 格式:
block-name__element-name_modifier-name_modifier-value
我可以知道指定一个没有element-name 的类是否可以接受?这意味着我们只有块,然后是修饰符。
这是一个例子:
<div class="menu_light-theme">
<!-- the other menu elements such as the buttons and icons -->
<ul class="menu__list_light-theme>
<li><a class="menu__list-element" href="">Home</a></li>
<li><a class="menu__list-element" href="">About</a></li>
</ul>
</div>
从上面的代码块可以看出,.menu_light-theme 类充当菜单的“包装器”,类名仅包含 block 和 modifier。
我知道这是主观的,但我想知道这是否符合 BEM,当然,当 BEM 的 元素 看起来“冗余”时,我愿意就如何处理这种情况提出建议'。
【问题讨论】:
-
BEM 只是一个指南,您可以按照最适合您的程度进行操作