7

阅读 BEM CSS 并编写了一些小型网站,我对此非常熟悉。但是,我仍然不确定如何处理非常相似但没有关系的块。

假设我有很多无序列表块,它们的第一行都有相同的样式。其他列表项可以以不同的方式布局,并且彼此完全不相关。

我发现自己将块命名为它是什么(例如“最新消息”、“即将发生的事件”),然后在 CSS 中堆叠所有这些块变得很麻烦——更不用说难以管理了。

欣赏这些东西不是一刀切的解决方案;但想象一下,很多人都会遇到同样的问题。将这些块称为“标准列表”然后将列表项作为块不是更有效吗?

似乎与 BEM 试图实现的整个原则背道而驰。我应该能够将“最新消息”放在任何我想要的地方。这样我就必须获得包含最新新闻内容的正确“标准列表”?

希望这不会太混乱!任何建议都会很棒!

4

1 回答 1

5

有一件重要的事情经常被忽视——混音的使用。

混合是一种在同一个 DOM 节点上放置几个不同块的可能性。

因此,对于您的示例,您可以创建

<ul class="latest-news list">

这将为您提供列表所需的所有常见样式,并为最新消息添加特性。

于 2014-09-04T22:41:22.350 回答