【发布时间】:2015-09-23 13:31:51
【问题描述】:
我知道在使用 BEM 时,类名不应该直接反映 HTML 结构,但是应该如何命名包装器元素? 请忽略我的特殊语法(接近SUIT);它仍然遵循 BEM,只是用不同的方式来区分元素。
例如:
<div class="?">
<footer class="PageFooter">
<h4 class="PageFooter-brand>…</h4>
<ul class="PageFooter-contactDetails">…</ul>
</footer>
<div>
我目前将这个实例中的包装器归类为PageFooterWrapper,但这感觉很笨拙,因为包装器不是独立的——它纯粹为PageFooter 而存在。显然,用PageFooter- 为所有内容添加前缀是荒谬的,因此只剩下将包装器视为PageFooter 的一部分:PageFooter-wrapper。这让我很恼火,因为这有一个隐含的建议。
那么包装器的类应该是什么?
【问题讨论】:
-
既然
-
@Rob 别那么迂腐。这是为问题制作的示例。
-
一点也不迂腐。这是一个明显比你更有经验的人的技术观察。它有什么用途?
-
@Rob 下次我表现得像个笨蛋时,我会记得将其称为“技术观察”。
-
你的推理是不正确的,好像你的例子代表了一些典型的东西。不是,我试图指出这一点,但我会留给你。
标签: css naming-conventions wrapper nested bem