css - 从另一个文件 sass 中的类名扩展

标签 css sass styling bem

所以我目前正在按照 BEM 标准进行一些样式设计。

我正在做的一个例子可能是这样的:

.block{ 
  &__element {
  }
}

我想做的是:

// file a 
.block {
 ...
}

-

// file b
// add magic to reference the `block`class in file a  
&__elelemnt {
 ...
}

我现在在做什么:

// file a 
.block {
 ...
}

-

// file b
.block__elelemnt {
 ...
}

(手动将block部分添加到名称中)

有什么方法可以更智能地引用它吗?

提前致谢

最佳答案

你可以有这样的文件结构:

block-1/
--block-1.scss
--element-1.scss
--element-2.scss
block-2/
--block-1.scss
--element-1.scss
--element-2.scss

并导入元素文件信息 block 文件。

block .scss:

.block {
    color: red;

    @import "element-1.scss";
    @import "element-2.scss";
}

element-1.scss:

&__element-1 {
    color: green;
}

编译为:

.block {
    color: red;

    &__element-1 {
        color: green;
    }
}

关于css - 从另一个文件 sass 中的类名扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48617449/

相关文章:

css - 可见性/显示和隐藏/隐藏类基础

html - 将鼠标悬停在子项和父项上以触发更改

CSS flexbox 在 IE10 中不工作

css - 如何使用ion-row和ion-col对齐ionic 2中的元素?

css - 在移动设备中使用 Bootstrap 无法正确显示按钮

css - 在构建 VITE 应用程序时如何分配自定义 CSS 文件名?

html - 如何更改 <select> 的 <optgroup> 标签的样式?

Pandas Styling - 对特定列的单元格而不是整个 DataFrame 进行着色

html - 保留中间 1024px 并拉伸(stretch)侧栏以填充页面?

javascript - 单击另一个切换 div 时将图标切换回 "i"元素到原始位置