在 SASS 中是否有可能从另一个文件中的类继承?

这个问题几乎说明了一切。

例如,如果我使用 Bootstrap,我可以在自己的 SASS 样式表中定义从 Bootstrap 的 CSS 类继承的类吗?或者 SASS 中的继承只在单个文件的范围内工作?

67681 次浏览

To my knowledge, you have to use @import of the file containing the classes you want to use into your SASS file in order to utilize them in that file. However, I am not a SASS/SCSS expert, so someone may know of another way to remotely use them that I am not aware of.

**I might be mistaken, but if I get what you're trying to do, can't you just use the @extend .classname; command inside the element that you'd want to extend? Naturally, you should only modify your own code to preserve updatability.

YES! its possible.

If you want all <button> elements to inherit the .btn class from Twitter Bootstrap's Default buttons

In your styles.scss file you would have to first import _bootstrap.scss:

@import "_bootstrap.scss";

Then below the import:

button { @extend .btn; }

Just as the accepted answer has shown this is possible with @import, however @import has been deprecated by sass

The Sass team discourages the continued use of the @import rule. Sass will gradually phase it out over the next few years, and eventually remove it from the language entirely. Prefer the @use rule instead.

The @use rule is better suited for use now, since it does not pollute the scope of the importing (user) module. unfortunately at the time of writing the use rule is only implemented in Dart sass.