css - Bem 嵌套命名

标签 css bem

假设我有一个面板 block ,里面有卡片,我想制作 block ,所以它应该是这样的:

.control-block
  .control-panel
    .control-results
      .card
        .card-title
        .card-body

我应该为 .card block 使用一些前缀吗?

最佳答案

card block 不需要任何前缀,但我宁愿使用这样的前缀:

.control
  .control__panel
    .control__results
      .card
        .card__title
        .card__body

所以有两个 block :control 和里面的 cardcontrol 有两个元素:panelresults。而 cardtitlebody

如果你想连接cardcontrol你可以添加一个mix使用 control__card 所以最终标记将是:

.control
  .control__panel
    .control__results
      .card .control__card
        .card__title
        .card__body

有关此类方法的更多信息,请参阅 https://en.bem.info/methodology/css/#mixes

关于css - Bem 嵌套命名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48787552/

相关文章:

html - 将导航栏与文本主体对齐

css - 使用 css translate -50% to center div 不适用于 Firefox 保存的详细信息弹出窗口

css - 有 SASS.js 吗?像 LESS.js 这样的东西?

html - 修饰符的目标同级

javascript - JS 对 BEM CSS 结构的操作

css - 如何覆盖嵌套规则中的修饰符

html - 字段集中的边界半径不起作用

css - Bootstrap根据屏幕尺寸自动调整

html - Bem 命名约定

css - 如何在 Aurelia View 中反射(reflect) BEM block