CSS BEM,它为修饰符...?

时间:2017-05-05 13:43:09

标签: css bem

我不确定哪个是官方网站,我发现getbem.comen.bem.info

建议使用--作为修饰符(Naming):

  

CSS类形成为块或元素的名称加上两个破折号。

修饰符的其他_Modifier name):

  

修饰符名称由单个下划线(_)分隔。

我知道我可以使用其中任何一种,并且确保一致性非常重要,但我希望尽可能尝试使用官方规格。

  • 哪个是官方网站..?
  • 我真的应该使用--_作为修饰符吗?

1 个答案:

答案 0 :(得分:4)

  

哪个是官方网站?

BEM由Yandex作为非正式指南开始,后来他们在en.bem.info上形式化,所以在这方面en.bem.info是&#34 ;规范" BEM的版本。

话虽如此,BEM有很多风味,我自己使用的变体主要受Harry RobertsNicolas Gallagher的影响。

这让我想到你的下一个问题:

  

我真的应该使用--_作为修饰符吗?

我的回答是:你的用法应该保持一致,但你可以使用你喜欢的任何你喜欢的BEM变体。请确保您团队中的每个人都了解您正在进行标准化的变体。

这类似于使用制表符与两个空格对比四个空格(vs hotdogs)。除了成为人们倾向于拥有非理性强烈的个人偏好之外,它实际上并没有产生任何影响。

为了帮助规范人们,我使用了一个块,元素和修饰符的示例语法来显示变体正常化的内容:

我以前主要使用:

the-block__the-element--the-modifier

但我现在更喜欢:

TheBlock_theElement-theModifier

简洁。