Sass 是否可以将.css文件中定义的类@扩展为.scss文件?

Sass 是否可以将.css文件中定义的类@扩展为.scss文件?,sass,extend,Sass,Extend,例如: app.scss @import url('orange.css'); @import 'navel.scss'; orange.css .orange { color: orange; } 肚脐 .navel { @extend .orange; } 在SASS中,如果您添加 @import "test.css"; 或 它被编译为纯css@import指令。由于该文件具有.css扩展名,因此SASS预处理器认为这是纯css,其中的代码不涉及SAS

例如:

app.scss

@import url('orange.css');  
@import 'navel.scss';
orange.css

.orange {  
  color: orange;  
}
肚脐

.navel {  
    @extend .orange;  
}
在SASS中,如果您添加

@import "test.css";

它被编译为纯css
@import
指令。由于该文件具有
.css
扩展名,因此SASS预处理器认为这是纯css,其中的代码不涉及SASS语言操作。在您的示例中,如果您尝试扩展
.orange
,您将得到:

The selector ".orange" was not found.

简而言之:仅当您使用SASS文件时才可以进行扩展。

@extend无法通过导入CSS文件进行扩展。你必须

  • 将css转换为SCSS部分(或文件)
  • @导入此部分
  • @扩展CSS类
  • 这样做的缺点是会留下重复。假设此导入是一个7000行长的CSS文件(如引导),那么您将遇到麻烦

    The selector ".orange" was not found.