【发布时间】:2018-07-26 02:01:45
【问题描述】:
最近我开始在我的项目中使用 BEM 来组织 CSS,但现在我已经到了拥有这样的 html 的地步:
<div class="container">
<div class="container__header">
<div>TITLE</div>
<div>SUBTITLE</div>
</div>
<div class="container__body">
</div>
</div>
由于我更熟悉 SMACSS,我将带有标题和正文的容器视为布局相关样式。但是每个子页面上的标题内容会有所不同,有时它会有需要不同样式的标题/副标题,有时它会是一些完全不同的结构。就 SMACSS 而言,我会将其放在模块文件夹中并在那里进行管理,但现在使用 BEM 创建具有 __title 和 __subtitle 元素的元素(例如 note-header)是一种好习惯吗?
<div class="container">
<div class="container__header note-header">
<div class="note-header__title">TITLE</div>
<div class="note-header__subtitle">SUBTITLE</div>
</div>
<div class="container__body note-body">
...
</div>
</div>
这种方法的问题是,为了命名约定,note-header 大多数时候可能是空类。处理这种情况的最佳做法是什么
【问题讨论】:
-
命名文章不错-> medium.com/fed-or-dead/…